عملگر like در SQL
عملگر LIKE
عملگر LIKE در بند WHERE برای پیدا کردن یک الگوی خاص در یک ستون استفاده می شود.
فرم عملگر LIKE:
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern
مثال عملگر LIKE
در جدول Persons
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
می خواهیم افرادی که در شهری زندگی می کنند که با حرف s شروع می شود را انتخاب کنیم.
از دستور زیر استفاده می کنیم:
SELECT * FROM Persons
WHERE City LIKE 's%'
توجه کنید که یک الگو را در بین کوتیشن می نویسیم.
علامت % جانشینی برای یک یا چند کاراکتر در الگو استفاده می شود که می تواند این کاراکترها هر چیزی باشد.
جدول نتایج بدین شکل خواهد بود:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
3 | Pettersen | Kari | Storgt 20 | Stavanger |
حال اگر بخواهیم افرادی را انتخاب کنیم که در شهری زندگی می کنند که به کاراکتر S ختم می شوند از دستور زیر استفاده می کنیم:
SELECT * FROM Persons
WHERE City LIKE '%s'
جدول نتایج به شکل زیر خواهد بود:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
حال اگر بخواهیم افرادی را انتخاب کنیم که در شهری زندگی می کنند که حاوی کلمه "tav" در نام شهر خود می باشند از دستور زیر استفاده می کنیم:
SELECT * FROM Persons
WHERE City LIKE '%tav%'
جدول نتایج به شکل زیر خواهد بود:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
3 | Pettersen | Kari | Storgt 20 | Stavanger |
می شود افرادی را انتخاب کرد که در شهری زندگی می کنند که حاوی کلمه "tav" نمی باشند. این کار را با کلید واژه NOT قبل از عملگر LIKE انجام می دهیم. (NOT LIKE)
از دستور زیر استفاده می کنیم:
SELECT * FROM Persons
WHERE City NOT LIKE '%tav%'
جدول نتایج به شکل زیر خواهد بود:
P_Id | LastName | FirstName | Address | City |
---|---|---|---|---|
1 | Hansen | Ola | Timoteivn 10 | Sandnes |
2 | Svendson | Tove | Borgvn 23 | Sandnes |
برای مشاهده فیلم های آموزشی مقدماتی تا پیشرفته پایگاه داده SQLServer کلیک کنید.
- نوشته شده توسط مهندس تمیزی
- بازدید: 33387
دیدگاهها
سلام اگه قرار باشه توی یک جدول همه ی نام خانوادگی هایی رو انتخاب کنیم که دو حرفی باشن یا بیشتر باید چیکار کنیم
سلام
به مثال زیر توجه کنید:SELECT * FROM Persons
WHERE LastName LIKE '%[__]%'
کاراکتر آندرلاین در کوئری بالا، جانشینی برای دقیقا یک کاراکتر است، و با توجه به اینکه از دو علامت آندرلاین (_) استفاده شده است به جواب سوال شما نزدیک خواهیم شد.
برای کسب اطلاعات بیشتر در مورد Wildcard یا کاراکترهای جایگزین به مطلب زیر مراجعه فرمایید:
beyamooz.com/sql/101-advanced/258-%DA%A9%D8%A7%D8%B1%D8%A7%DA%A9%D8%AA%D8%B1%D9%87%D8%A7%DB%8C-%D8%AC%D8%A7%DB%8C%DA%AF%D8%B2%DB%8C%D9%86-wildcard-%D8%AF%D8%B1-sql
با سلام و عرض ادب خدمت شما مدیریت ونویسندگان محترم سایت و تمامی بازدید کنندگان محترم
تشکر میکنم از فراهم کردن این مطالب و در اختیار گذاشتن آنها برای استفاده عموم
خیلی خیلی ممنون . من که استفاده کردم از این مطالب
اجرکم عندالله