LIKE (LIKE)
عملگر LIKE در MySQL برای جستجوی الگوهاست. «الگو (Pattern)» یعنی متنی با جای خالی. همچنین «وایلدکارد (Wildcard)» نمادهای خاص % و _ است؛ % یعنی هر تعداد کاراکتر، _ یعنی دقیقاً یک کاراکتر.
سینتکس LIKE
SELECT <column1, column2, ...>
FROM <table_name>;
WHERE <columnN> LIKE <pattern>;
نمونه های رایج با عملگر LIKE
نکته: می توان با AND یا OR چند شرط را ترکیب کرد.
شروع با یک حرف: a%
SELECT *
FROM Customers;
WHERE CustomerName LIKE 'a%';
پایان با یک حرف: %a
SELECT *
FROM Customers;
WHERE CustomerName LIKE '%a';
وجود زیررشته در هر موقعیت: %or%
SELECT *
FROM Customers;
WHERE CustomerName LIKE '%or%';
حرف دوم مشخص: _r%
SELECT *
FROM Customers;
WHERE CustomerName LIKE '_r%';
حداقل سه کاراکتر و شروع با a: a__%
SELECT *
FROM Customers;
WHERE CustomerName LIKE 'a__%';
شروع با a و پایان با o روی ContactName
SELECT *
FROM Customers;
WHERE ContactName LIKE 'a%o';
نقیض الگو: NOT LIKE
SELECT *
FROM Customers;
WHERE CustomerName NOT LIKE 'a%';
گام های عملی سریع
- ستون هدف را مشخص کن.
- الگو را با % و _ بساز.
- WHERE ... LIKE را بنویس.
- در صورت نیاز AND/OR اضافه کن.
جمع بندی سریع
- % هر تعداد کاراکتر را می پوشاند.
- _ فقط یک کاراکتر را می پوشاند.
- NOT LIKE یعنی الگو را رد کن.
- با AND/OR الگوها را ترکیب کن.