(NOT) LIKE 運算子 (SQL (NOT) LIKE Operator)
LIKE 運算子搭配 WHERE 子句可以依一特定模式 (Pattern) 為條件來搜尋資料表中的特定資料。
LIKE 語法 (SQL LIKE Syntax)
SELECT table_column1, table_column2, table_column3...
FROM table_name
WHERE column_name LIKE pattern;
LIKE 運算子查詢用法 (Example)
假設我們想從下面的 customers 資料表中取得住在台北縣市的顧客資料:
C_Id | Name | Address | Phone |
---|---|---|---|
1 | 張一 | 台北市XX路100號 | 02-12345678 |
2 | 王二 | 新竹縣YY路200號 | 03-12345678 |
3 | 李三 | 高雄縣ZZ路300號 | 07-12345678 |
4 | 陳四 | 台北縣AA路400號 | 02-87654321 |
我們可以使用這樣的 LIKE 查詢語句:
SELECT * FROM customers WHERE Address LIKE '台北%';
查詢結果如下:
C_Id | Name | Address | Phone |
---|---|---|---|
1 | 張一 | 台北市XX路100號 | 02-12345678 |
4 | 陳四 | 台北縣AA路400號 | 02-87654321 |
NOT LIKE
相反的,NOT LIKE 就是不包含在條件裡的的資料我通通要了,如上例多加上 NOT:
SELECT * FROM customers
WHERE Address NOT LIKE '台北%';
查詢後返回的結果會是:
C_Id | Name | Address | Phone |
---|---|---|---|
2 | 王二 | 新竹縣YY路200號 | 03-12345678 |
3 | 李三 | 高雄縣ZZ路300號 | 07-12345678 |