PDA

View Full Version : جستجو با دستورات SQL



amir_king2_2
سه شنبه 02 اردیبهشت 1382, 11:36 صبح
سلام.
چطوری میشه تو بانک SQL یک کلمه رو از تو یک فیلدهایی که فرمتشون متنی یا nvarchar میباشد رو پیدا کرد.

مثلا من میخوام تو فیلدهایی که اطلاعات هر کدومشون به صورت متن چند سطری وارد شده اند کلمهء قراردادهای امسال رو پیدا کنم.
با تشکر : امیر

imported_admin
سه شنبه 02 اردیبهشت 1382, 12:47 عصر
دوست عزیز با استفاده از کلمه Like و ترکیب با % میتوانی جستجوی مورد نظرت را انجام بدی . برای راهنمایی بیشتر در این مورد در Books Online خود sql-server دنبال کلمه Like بگردید.

amir_king2_2
سه شنبه 02 اردیبهشت 1382, 14:38 عصر
با سلام مجدد :o
ولی آیا تو یک فیلدی که چند سطر متن در هر رکوردش قرار داده شده آیا کلمه like میتونه یک کلمه رو پیدا کنه ؟ :?:

مثلا فکر کنین که تمامی جمله بالا در یک رکورد از یک فیلد متنی قرار گرفته اند. آیا like میتونه کلمه < رکوردش > رو در این رکورد پیدا کنه ؟

با تشکر : امیر

toxi_boy733
سه شنبه 02 اردیبهشت 1382, 23:50 عصر
اره دیگه...ببین..
با استفاده Like و ٪ می تونی این کارو بکنی...
اینجارو ببین :

use mydb
select * from mytable
ere myfield like " %keyword% " l

الان مثلا در جدول mytable تمام رکوردهایی رو که داخلشون keyword هست
پیدا میکنه...ولی اگر ٪ رو برداری رکوردهایی که فقط keyword را دارن واست پیدا میکنه ....پس ٪ قبل و بعد از keyword لازمه !
امیدوارم به دردت خورده باشه

S.Azish
چهارشنبه 03 اردیبهشت 1382, 18:31 عصر
فقط مطلبی رو که نباید فراموش کرد خود فیلد NVarchar هست که باید به شکل زیر جستجو رو انجام داد



Like N'keyword%'

استفاده از N برای جستجو در فیلدهای Unicode مثل NVarchar هست

(امید)
پنج شنبه 08 خرداد 1382, 15:18 عصر
برعکسش چطور می شه.
مثلا رکوردهایی رو select کنیم که تو فیلد name کلمه احمد نباشه.
امید

(امید)
سه شنبه 13 خرداد 1382, 17:17 عصر
جواب مثل LIKE منتها همراه با NOT