模糊查询
like
:一般搭配通配符使用,可以判断字符型或数值型,通配符:%
任意多个字符(包含0个),_
任意单个字符
between and
相当于[a,b]
闭区间,调换临界值大小关系则结果可能为空
in
相当于= 第一个 or = 第二个 ...
,所以不能搭配正则匹配使用
is null /is not null
:用于判断null值(不能使用= null
代替此功能,is
也不能代替=
,is
只用于和null
搭配)
- 查询员工名中包含字符
a
的员工信息
SELECT * FROM employees WHERE last_name LIKE '%a%';
- 查询员工名中第二个字符为_的员工名
SELECT
last_name
FROM
employees
WHERE
last_name LIKE '_$_%' ESCAPE '$';
/* 或者之间用转义,但是推荐上面的方式,这样的转义标识符可以由自己任意定义
SELECT
last_name
FROM
employees
WHERE
last_name LIKE '_\_%';
*/
SELECT
last_name,
job_id
FROM
employees
WHERE
job_id IN('IT_PROT','AD_VP','AD_PRES');