PDA

View Full Version : Full Text Search



Erfanian
چهارشنبه 24 بهمن 1386, 09:51 صبح
با سلام
چگونه می‌توان در بیش از یک جدول که امکان Full Text Search برای آنها فعال است با یک دستور دنبال یک مقدار بگردیم و آنهارا نمایش دهیم؟
بطور مثال دوجدول مطب دکتر و آزمایشگاه را داریم و می‌خواهیم نام دکتری خاص را در هردوجدول جستجو و نمایش دهیم. البته این دو جدول باهم رابطه‌ای ندارند و اسامی فیلد هایشان نیز متفاوت است

reza_rad
چهارشنبه 24 بهمن 1386, 10:05 صبح
البته این دو جدول باهم رابطه‌ای ندارند و اسامی فیلد هایشان نیز متفاوت است
خب اگه هیچ ارتباطی وجود نداره از دو query استفاده کنید و نتیجه رو UNION کنید.

اما اگه ارتباطی وجود داره می تونید از CONTAINSTABLE (http://msdn2.microsoft.com/en-us/library/ms189760.aspx) استفاده کنید.

Erfanian
چهارشنبه 24 بهمن 1386, 11:50 صبح
از ارسال پاسختان متشکرم،
اجازه دهید سوال خود را طور دیگری مطرح کنم، اگر بخواهم یک موتور جستجو برای جداول موجود در دیتابیس خودمان تعریف کنیم -شبیه موتورهای جستجوی وبی- چه راهنمائی می‌توانید بکنید، باتوجه به اینکه امکان Full Text Search برروی دیتابیس فعال است:لبخندساده:

e-shahshahani
چهارشنبه 24 بهمن 1386, 22:40 عصر
من برای این کار یک جدول جدید ساختم و اطلاعات جداول مختلف را در این جدول میریزم و با چند فیلد دیگر منبع اصلی آن را مشخص می کنم. سپس جستجو را بر روی این جدول انجام می دهم.

این کار مزیتش برای من اینه که اطلاعات در جداول اصلی به صورت xml یا html یا word دخیره می شوند و من در این جدول جدید فقط نسخه متنی آنها را ذخیره می کنم!!!

البته با این کار دچار افزونگی داده ها می شویم که باید حواسمان جمع باشه.

اگر دوستان راه حل هایی دارند ما را نیز بهره مند سازند. ممنون می شویم.
موفق باشید

Erfanian
دوشنبه 29 بهمن 1386, 20:35 عصر
با عرض سلام مجدد و پوزش از اینکه مدتی نبودم، در دیتا بیس من بیش از 40 جدول وجود دارد و هیچ رابطه و کلید مشترکی نیز بین آنها وجود ندارد ، آیا برای پیداکردن یک مورد باید 40 کوئری نوشته و آنها را باهم union کنم؟:گریه:

e-shahshahani
دوشنبه 29 بهمن 1386, 20:44 عصر
من برای این کار یک جدول جدید ساختم و اطلاعات جداول مختلف را در این جدول میریزم و با چند فیلد دیگر منبع اصلی آن را مشخص می کنم. سپس جستجو را بر روی این جدول انجام می دهم.

این کار مزیتش برای من اینه که اطلاعات در جداول اصلی به صورت xml یا html یا word دخیره می شوند و من در این جدول جدید فقط نسخه متنی آنها را ذخیره می کنم!!!

البته با این کار دچار افزونگی داده ها می شویم که باید حواسمان جمع باشه.

اگر دوستان راه حل هایی دارند ما را نیز بهره مند سازند. ممنون می شویم.
موفق باشید

راهی که گفتم راه حل مناسبی میتونه باشه. نمیتونه؟؟؟

AminSobati
سه شنبه 30 بهمن 1386, 00:18 صبح
شما میتونین یکبار View بسازین برای تمام جداولتون و Query اصلی رو از View بگیرین. راه حل e-shahshahani هم عملی هستش و در مواردی برخورد کردم که با این شیوه بدون مشکل کار انجام میشده

Erfanian
سه شنبه 30 بهمن 1386, 06:46 صبح
بسیار ممنونم، پس توکل به خدا ببینم چکار می‌کنم.....