假如我们要查询 name
字段以 Jen
开通 的所有记录,可以这样写:
SELECT
first_name,
last_name
FROM
customer
WHERE
first_name LIKE 'Jen%';
%
匹配任意多个字符_
匹配一个字符value LIKE pattern [ESCAPE escape_character]
value NOT LIKE pattern [ESCAPE escape_character]
SELECT
'foo' LIKE 'foo', -- true
'foo' LIKE 'f%', -- true
'foo' LIKE '_o_', -- true
'bar' LIKE 'b_'; -- false
=
f
开头,后跟任意数量的字符_
开头,匹配任何单个字符开通,后跟字幕o
并以任何单个字符结尾的字符串b
开头,匹配任何单个字符开通,后跟字幕_
并以任何单个字符结尾的字符串例如,查询返回名字包含er
字符串的所有记录:
SELECT
first_name,
last_name
FROM
customer
WHERE
first_name LIKE '%er%'
ORDER BY
first_name;
%
与_
的使用
SELECT
first_name,
last_name
FROM
customer
WHERE
first_name LIKE '_her%'
ORDER BY
first_name;
Operator | Equivalent |
---|---|
~~ | LIKE |
~~* | ILIKE |
!~~ | NOT LIKE |
!~~* | NOT ILIKE |