1. LIKE操作符
- 通配符:用來匹配值的一部分的特殊字符
- 搜索模式:由字面值、通配符或者兩者組合構成的搜索條件
- 爲在搜索子句中使用通配符,必須使用LIKE操作符
- LIKE指示MySQL,後面跟的搜索模式利用通配符匹配而不是直接相等匹配進行比較
- LIKE爲謂詞而不是操作符
2. 百分號 % 通配符
SELECT
prod_id,
prod_name
FROM
products
WHERE
prod_name LIKE 'jet%';
- 搜索模式’%anvil%'表示匹配任何位置包含文本anvil的值,而不論它之前或之後出現什麼字符
SELECT
prod_id,
prod_name
FROM
products
WHERE
prod_name LIKE '%anvil%';
SELECT
prod_name
FROM
products
WHERE
prod_name LIKE 's%e';
- 尾空格會干擾通配符匹配
- 如下語句在匹配時,如果某條記錄prod_name的anvil後面包含空格,則不會被匹配到
SELECT
prod_id,
prod_name
FROM
products
WHERE
prod_name LIKE '%anvil';
3. 下劃線 _ 通配符
SELECT
prod_id,
prod_name
FROM
products
WHERE
prod_name LIKE '_ ton anvil';
4. 使用通配符技巧
- 不要過度使用通配符,如果其他操作符能達到相同的目的,應該使用其他操作符
- 在確實需要使用通配符時,除非絕對有需要,否則不要把他們用在搜索模式的最開始處,把通配符置於搜索模式的最開始處,搜索起來是最慢的。
- 仔細注意通配符的位置,如果放錯地方,可能不會返回想要的數據。