مثال از اپراتور like در جستجوی sql

نحوه استفاده از like در عبارت select در sql

توسط admin | گروه SQL Server | 1396/04/10

نظرات 0

 اپراتور LIKE در SQL Server

از این اپراتور در کنار WHERE در عبارتهای SQL SERVER برای جستجو استفاده می شود. در صورت استفاده از اپراتور LIKE در تعداد رکوردهای بالا ممکن است بار زیادی بر روی SERVER ایجاد شود. دلیلش هم این است که اپراتور LIKE رکورد به رکورد (البته روی رکوردهایی که قفل نشده اند) عملیات اسکن و جستجو را انجام می دهد. 

در هنگام استفاده از اپراتور LIKE میتوان از دو کاراکتر ویژه برای عملیات جستجو استفاده کرد: علامت % و علامت _ که علامت _ میتواند به جای یک کاراکتر بنشیند.

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;

در کنار عبارت LIKE میتوان از and و or و not هم استفاده کرد.

چند مثال از LIKE در ذیل آورده شده است:

اپراتور LIKE شرح
WHERE CustomerName LIKE 'a%' جستجو در عباراتی که با "a" شروع شده است
WHERE CustomerName LIKE '%a' جستجو در عباراتی که با  "a" خاتمه یافته است
WHERE CustomerName LIKE '%or%' جستجو در عباراتی که کلمه "or" را در هر جای خود دارند
WHERE CustomerName LIKE '_r%' جستجو در عباراتی که حرف "r" را در دومین حرف از کلمه خود دارند
WHERE CustomerName LIKE 'a_%_%' جستجو در عبارتهایی که با حرف  "a" شروع شده اند و تعداد سه حرف دارند
WHERE ContactName LIKE 'a%o' جستجو در عباراتی که با  "a" شروع شده اند و با  "o" خاتمه یافته اند

در مثال زیر مشتریانی که با حرف a شروع شده اند نمایش داده می شوند:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a%';

در مثال زیر نام مشتریانی که با حرف a خاتمه یافته اند نمایش داده می شوند:

SELECT * FROM Customers
WHERE CustomerName LIKE '%a';

در مثال زیر نام مشتریانی که دارای کلمه or در هر بخش خود هستند نمایش داده می شوند.

SELECT * FROM Customers
WHERE CustomerName LIKE '%or%';

در مثال زیر مشتریانی که در حرف دومشان a دارند نمایش داده می شوند:

SELECT * FROM Customers
WHERE CustomerName LIKE '_r%';

در مثال ذیل مشتریانی که دارای حداقل سه حرف همستند و با a شروع میشوند نمایش داده میشوند:

SELECT * FROM Customers
WHERE CustomerName LIKE 'a_%_%';

 

CustomerID

CustomerName

ContactName

City

Country

1

Alfreds Futterkiste

Maria Anders

Berlin

Germany

2

Ana Trujillo Emparedados y helados

Ana Trujillo

México D.F.

Mexico

3

Antonio Moreno Taquería

Antonio Moreno

México D.F.

Mexico

4

Around the Horn

Thomas Hardy

London

UK

در مثال زیر مشتریانی که نام آنها با a شروع میشود و به e ختم میشود نمایش داده می شوند.

SELECT * FROM Customers
WHERE ContactName LIKE 'a%o';

در مثال زیر نام مشتریانی که با a شروع نشده اند نمایش داده می شوند

SELECT * FROM Customers
WHERE CustomerName NOT LIKE 'a%';

CustomerID

CustomerName

ContactName

City

Country

5

Berglunds snabbköp

Christina Berglund

Luleå

Sweden

6

Blauer See Delikatessen

Hanna Moos

Mannheim

Germany

7

Blondel père et fils

Frédérique Citeaux

Strasbourg

France

8

Bólido Comidas preparadas

Martín Sommer

Madrid

Spain

9

Bon app'

Laurence Lebihans

Marseille

France

 

 

 

0 نظر

نظر محترم شما در مورد مقاله های وب سایت برنامه نویسی و پایگاه داده

نظرات محترم شما در خدمات رسانی بهتر ما را یاری می نمایند. لطفا اگر مایل بودید یک نظر ما را مهمان فرمائید. آدرس ایمیل و وب سایت شما نمایش داده نخواهد شد.

حرف 500 حداکثر