SQL LIKE子句使用通配符運(yùn)算符比較相似的值。符合LIKE操作符配合使用2個(gè)通配符:
百分號(hào) (%)
下劃線 (_)
百分號(hào)代表零個(gè),一個(gè)或多個(gè)字符。下劃線表示單個(gè)數(shù)字或字符。所述符號(hào)可以在組合使用。
%和_的基本語法如下:
SELECT FROM table_name WHERE column LIKE 'XXXX%' or SELECT FROM table_name WHERE column LIKE '%XXXX%' or SELECT FROM table_name WHERE column LIKE 'XXXX_' or SELECT FROM table_name WHERE column LIKE '_XXXX' or SELECT FROM table_name WHERE column LIKE '_XXXX_'
可以使用AND或OR運(yùn)算符組合N多個(gè)條件。在這里,XXXX可以是任何數(shù)字或字符串值。
這里顯示了以LIKE子句帶用WHERE的'%'和'_'運(yùn)算符不同的幾個(gè)例子:
語句 | 描述 |
---|---|
WHERE SALARY LIKE '200%' | 查找以200開始的任何值 |
WHERE SALARY LIKE '%200%' | 查找含有200的任何值 |
WHERE SALARY LIKE '_00%' | 查找在第二和第三位置是00的任何值 |
WHERE SALARY LIKE '2_%_%' | 查找開始2并且長(zhǎng)度至少為3個(gè)字符的任何值 |
WHERE SALARY LIKE '%2' | 查找以2結(jié)尾的任何值 |
WHERE SALARY LIKE '_2%3' | 查找第二位置為2,并以3結(jié)束的任何值 |
WHERE SALARY LIKE '2___3' | 查找以5位數(shù)字-開頭為2,并3結(jié)束的任何值 |
讓我們以一個(gè)真實(shí)的例子,請(qǐng)考慮以下記錄CUSTOMERS表:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ramesh | 32 | Ahmedabad | 2000.00 | | 2 | Khilan | 25 | Delhi | 1500.00 | | 3 | kaushik | 23 | Kota | 2000.00 | | 4 | Chaitali | 25 | Mumbai | 6500.00 | | 5 | Hardik | 27 | Bhopal | 8500.00 | | 6 | Komal | 22 | MP | 4500.00 | | 7 | Muffy | 24 | Indore | 10000.00 | +----+----------+-----+-----------+----------+
下面是一個(gè)例子,這將顯示CUSTOMERS表中薪水以200為開始的所有記錄:
SQL> SELECT * FROM CUSTOMERS WHERE SALARY LIKE '200%';
這將產(chǎn)生以下結(jié)果:
+----+----------+-----+-----------+----------+ | ID | NAME | AGE | ADDRESS | SALARY | +----+----------+-----+-----------+----------+ | 1 | Ramesh | 32 | Ahmedabad | 2000.00 | | 3 | kaushik | 23 | Kota | 2000.00 | +----+----------+-----+-----------+----------+