MySQL学习笔记六
第八章用通配符进行过滤
8.1LIKE操作符
1.通配符是指用来匹配值的特殊字符。
2.搜索条件由字面值、通配符或两者组合构成。
3.在搜索子句中使用通配符必须用LIKE操作符。
8.1.1百分号(%)通配符
输入:
SELECT first_name, last_name, job_id
FROM employees
WHERE job_id LIKE 'AD\_%';
输出:
说明:1.%表示任何字符出现任意次数,也可以匹配0个字符。
2.\_
将会被解释为字面意义上的下划线,而不是通配符。
输入:
SELECT first_name, last_name, job_id
FROM employees
WHERE job_id LIKE '%D\_%';
输出:
说明:通配符可以在任意位置使用,并且可以使用多个通配符。
输入:
SELECT first_name, last_name, job_id
FROM employees
WHERE job_id LIKE 'AD\_%ST';
输出:
说明:尾空格可能会干扰通配符匹配。解决方法是1.可以在后面添加%;2.使用函数去掉守卫空格。通配符不可以匹配NULL。
8.1.2下划线(_)通配符
输入:
SELECT first_name, last_name, job_id
FROM employees
WHERE job_id LIKE 'AD\_V_';
输出:
说明:下划线只匹配单个字符。
8.2使用通配符的技巧
- 不要过度使用,其他操作符可以达到目的的,优先使用其他通配符。
- 确实需要使用的,不要将其置于搜索模式的开始处。
- 仔细注意通配符的位置,放错地方可能不会返回想要的数据。