PDA

View Full Version : سوال: search در Database و نشان دادن كلمه مورد نظر و چند كلمه پيرامون آن



chapter844
یک شنبه 08 دی 1387, 11:45 صبح
با سلام

براي سايتي search گذاشتم و مي خواستم نتايج رو به صورت مختصر نمايش بده و حتما كلمه ي مورد نظر در اين مختصر نمايش داده شود. كسي مي تونه كمك كنه. ترجيحا Visual Basic اگرم نشد ‍#c ام بود خودم convertesh مي كنم.

مثل: جستجو در مورد سانترال
... امور ارتباطات تلفني تحت شبكه نظير اتصال مراكز سانترال تلفن با فواصل زياد - ارايه خطوط تلفن كشورهاي خارجي در ,...

چك كند كه كلمه در كجاي متن است و اطراف اونو بياره.

با تشكر

milade
یک شنبه 08 دی 1387, 12:08 عصر
سلام
با دستور select مانند نمونه عمل کنید:

select * from tbl_name whrerb field_name like%bb%
در مورد اینکه حوالی متن رو بیاره با instr (اگه درست نوشته باشتم) چک کن
پیروز باشی

chapter844
یک شنبه 08 دی 1387, 12:28 عصر
با select كه با % % باشه رو مي دونم ولي searche صحيحي نمياره و در مورد instr درسته،‌مي دونمم كه اين كار رو مي كنه ولي نوع استفاده صحيح رو نمي دونم

milade
یک شنبه 08 دی 1387, 12:50 عصر
یعنی چی سرچ صحیحی نمیاره؟
اگه میخوای دقیقا از متن بیارتش خوب % % رو نزار !
در مورد InStr هم فکر کنم راه حل خوبی نباشه دوستان نظر بهتری اگه دارند بدند وگرنه همین رو بگم !
موفق باشید

chapter844
یک شنبه 08 دی 1387, 13:24 عصر
اگر ب درصد نزاري كه اصلا نمياره ولي اينطوري براي جستجوي اسب ، مناسب رو هم مياره!

كرايندكس!؟ لطف مي كنيد كلمه ي انگليسي رو انگليسي بنويسيد. متشكرم. من الان نمي دونم چطوري نوشته مي شه.

hassanf
یک شنبه 08 دی 1387, 14:46 عصر
سلام
برای جستجوی کلمه در متن :


Select *
From TableName
Where Value like '% ' + @Value + ' %' Or
Value like '% ' + @Value Or
.................................


به فاصله بغل % توجه کن!

یرای نشان دادن قسمتی از متن هم ازString Functions تو help جستجو کن.

chapter844
یک شنبه 08 دی 1387, 15:27 عصر
متشكرم ولي مشكل اصليه من آوردن مختصر اونه

chapter844
یک شنبه 08 دی 1387, 15:43 عصر
اين مشكل تو Asp هست برم توي قسمت sql بپرسم؟

milade
یک شنبه 08 دی 1387, 15:44 عصر
خوب مثل اینکه هیچکی بلد نیست D:
داداش جون شما با InStr اون متن رو مورد جستجو قرار بده
یه عدد بر میگردونه که موقعیت کلمه رو میگه
خوب حالا شما با string.substring(a-20,a+20) متن رو کوتاه کن که اینجا مثال من a همون عدده هست
که 20 تا از عقب و 20 تا از جلو رو SubString براتون رها میکنه
همین دیگه
چه لذیذ !
پیروز باشید و پایدار

hosseinab
پنج شنبه 12 دی 1387, 09:24 صبح
پسرم بعد از اينكه با سلكت ركوردها رو پيدا كردي مي اي توي برنامه ايندكس اون كلمه رو پيدا مي كني بعد مثلا از 100 كاراكتر قبل تا 100 كاراكتر بعدش رو انتخاب مي كني نمايش مي دي كه البته بايد يه كم روش كار كني

mahdi_farhani
پنج شنبه 12 دی 1387, 09:36 صبح
اگر از SQL استفاده میکنی بهترین گزینه FULL Text Search هست .هم سریعتره هم دقت بالاتری داره

iman_ad
دوشنبه 16 دی 1387, 12:56 عصر
اگر از SQL استفاده میکنی بهترین گزینه FULL Text Search هست .هم سریعتره هم دقت بالاتری داره


میشه در این مورد توضیح بدی دوست من

nazila_jon
دوشنبه 16 دی 1387, 17:20 عصر
باید استور پروسیژر مربوطه را نوشته باشی :)

milade
دوشنبه 16 دی 1387, 17:57 عصر
اگر از SQL استفاده میکنی بهترین گزینه FULL Text Search هست .هم سریعتره هم دقت بالاتری داره
دوست عزیز FTS روی همه هاستها فعال نیست .
تازه ما سرورمون نسخه استاندارد داره ، FTS نداره
مگه این که Enterpice داشته باشید که اونم باید ماهی 290 دلار مسول سرور بده که حتی اگه شما بخواید یه سرورس شیر هم استفاده کنید قیمت سر به فلک میکشه برا یک گیگ !

iman_ad
سه شنبه 17 دی 1387, 14:32 عصر
FULL Text Search چطور استفاذه می شه؟