PDA

View Full Version : جستجوی متن چند رکورد در کنار هم (FTS)



titbasoft
چهارشنبه 16 شهریور 1384, 09:43 صبح
این سناریویی که می نویسم فقط یک مثال برای بیان نیازم هست . فرض کنید هر خط از یک کتاب رو توی یک رکورد جدا ذخیره کرده باشیم. یکی از فیلد های ما هم شماره صفحه است. حالا اگر بخواهیم دنبال یک عبارت (phrase) توی یک صفحه بگردیم باید چه کار کنیم. منظورم مثلا جمله ای است که در خط اول شروع شده و در خط دوم تمام شده . یا حتی برای جستجوی یک جمله در کتاب چه راه حلی پیشنهاد می کنید؟
در ضمن لطف با استفاده از FTS اگه میشه بیان کنید!
ممنون

AminSobati
چهارشنبه 16 شهریور 1384, 15:12 عصر
هاشم جان،
جمله برای FTS تعریف نشده هستش. FTS داخل فیلد رو جستجو میکنه و اگر مطابق شرط شما بود، رکورد رو برمیگردونه. اگر قصد دارید جستجو روی صفحه خاصی اتفاق بیافته، میتونین در WHERE خودتون صفحه مورد نظر رو وارد کنین

titbasoft
چهارشنبه 16 شهریور 1384, 22:27 عصر
ممنون جناب ثباتی. ولی منظورم رو فکرکنم بد بیان کردم.
فرض کنید داریم دنبال 2 تا کلمه با ترکیب عطفی (AND) می گردیم. به طور عادی این طوری در نظر گرفته می شه که 2 کلمه باید در یک رکورد باشند. من می خوام ببینم آیا راهی وجود داره که مثلا چیزی شبیه به گروه بندی (group by) اتفاق بیافته و مثلا رکوردهایی که یک فیلد مشترک دارند با هم ترکیب بشن (مشابه کاری که group by برای agg func ها انجام میده) و جستجو در حقیقت روی فیلد حاصل از جمع شدن چند فیلد (از رکوردهایی با یک فیلد شاخص یکسان) ، انجام بشه؟ مثلا چنین چیزی:

SELECT bookid,page where Contains(MIX( [text]) , 'this AND that' ) group by bookid,page