SQL LIKE 操作符

SQL LIKE 操作符


LIKE 操作符用於在 WHERE 子句中搜索列中的指定模式。


SQL LIKE 操作符

LIKE 操作符用於在 WHERE 子句中搜索列中的指定模式。

SQL LIKE 語法

SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern;


演示資料庫

在本教程中,我們將使用 itread01 樣本資料庫。

下面是選自 "Websites" 表的資料:

+----+--------------+---------------------------+-------+---------+
| id | name         | url                       | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1  | Google       | https://www.google.cm/    | 1     | USA     |
| 2  | 淘寶          | https://www.taobao.com/   | 13    | CN      |
| 3  | 入門教學      | http://www.itread01.com/    | 4689  | CN      |
| 4  | 微博          | http://weibo.com/         | 20    | CN      |
| 5  | Facebook     | https://www.facebook.com/ | 3     | USA     |
| 7  | stackoverflow | http://stackoverflow.com/ |   0 | IND     |
+----+---------------+---------------------------+-------+---------+


SQL LIKE 操作符例項

下面的 SQL 語句選取 name 以字母 "G" 開始的所有客戶:

例項

SELECT * FROM Websites
WHERE name LIKE 'G%';

執行輸出結果:

提示:"%" 符號用於在模式的前後定義萬用字元(預設字母)。您將在下一章中學習更多有關萬用字元的知識。

下面的 SQL 語句選取 name 以字母 "k" 結尾的所有客戶:

例項

SELECT * FROM Websites
WHERE name LIKE '%k';

執行輸出結果:

下面的 SQL 語句選取 name 包含模式 "oo" 的所有客戶:

例項

SELECT * FROM Websites
WHERE name LIKE '%oo%';

執行輸出結果:

通過使用 NOT 關鍵字,您可以選取不匹配模式的記錄。

下面的 SQL 語句選取 name 不包含模式 "oo" 的所有客戶:

例項

SELECT * FROM Websites
WHERE name NOT LIKE '%oo%';

執行輸出結果: