SQL 通配符
通配符可用於取代字串中的任何其他字元。
SQL 通配符
在 SQL 中,通配符與 SQL LIKE 運算子一起使用。
SQL 通配符用於搜尋表中的資料。
在SQL 中,可使用一下通配符:
#通配符 | 說明 |
---|---|
# % | |
_ #取代一個字元 | [ | charlist
示範資料庫
在本教學中,我們將使用 php 樣本資料庫。
下面是選自"Websites" 表的資料:
+----+--------------+--- ------------------------+-------+---------+
| id | name | url | alexa | country |
+----+----------+------------------------------------ --------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA | 1 |
| 2 | 淘寶 | https://www.taobao.com/ | 13 | CN cn/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 201 https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+----------- ------------------+-------+---------+
| id | name | url | alexa | country |
+----+----------+------------------------------------ --------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA | 1 |
| 2 | 淘寶 | https://www.taobao.com/ | 13 | CN cn/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 201 https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+----------- ------------------+-------+---------+
下面的SQL 語句選取url 以字母"https" 開始的所有網站:
實例SELECT * FROM Websites
WHERE url LIKE 'https%';執行輸出結果:
SELECT * FROM Websites
WHERE url LIKE '%oo%';執行輸出結果:
使用SQL _ 通配符
下面的SQL 語句選取name 以一個任意字元開始,然後是"oogle" 的所有客戶:
#實例
SELECT * FROM Websites
WHERE name LIKE '_oogle';
WHERE name LIKE '_oogle';
執行輸出結果:
#下面的SQL 語句選取name 以"G" 開始,然後是一個任意字符,然後是"o",然後是一個任意字符,然後是"le" 的所有網站:
實例
SELECT * FROM Websites
WHERE name LIKE 'G_o_le';
WHERE name LIKE 'G_o_le';
執行輸出結果:
使用SQL [charlist] 通配符
MySQL 中使用REGEXP 或NOT REGEXP 運算子(或RLIKE 和NOT RLIKE) 來操作正規表示式。
下面的SQL 語句選取name 以"G"、"F" 或"s" 開始的所有網站:
實例
SELECT * FROM Websites
WHERE name REGEXP '^[GFs]';
WHERE name REGEXP '^[GFs]';
執行輸出結果:
下面的SQL 語句選取name 以A 到H字母開頭的網站:
實例
SELECT * FROM Websites
WHERE name REGEXP '^[A-H]';
WHERE name REGEXP '^[A-H]';
#執行輸出結果:
下面的SQL 語句選取name 不以A 到H 字母開頭的網站:
實例
##SELECT * FROM WebsitesWHERE name REGEXP '^[^A-H]';
#執行輸出結果: