PostgreSQL LIKE 运算符
LIKE
在 WHERE
子句中使用 LIKE
运算符来搜索列中的指定模式。
有两个通配符经常与 LIKE
运算符一起使用:
%
百分号表示零个、一个或多个字符_
下划线表示一个字符
开始
要返回以特定字母或短语开头的记录,请在字母或短语末尾添加 %
。
实例
返回名称以字母 'A' 开头的所有客户:
SELECT * FROM customers
WHERE customer_name LIKE 'A%';
包含
要返回包含特定字母或短语的记录,请在字母或短语之前和之后添加 %
。
实例
返回名称中包含字母 'A' 的所有客户:
SELECT * FROM customers
WHERE customer_name LIKE '%A%';
ILIKE
注意:
LIKE
运算符区分大小写,如果要进行不区分大小写的搜索,请改用 ILIKE
运算符。实例
返回名称中包含字母 'A' 或 'a' 的所有客户:
SELECT * FROM customers
WHERE customer_name ILIKE '%A%';
结尾
若要返回以特定字母或短语结尾的记录,请在字母或短语之前添加 %
。
实例
返回名称以 'en' 结尾的所有客户:
SELECT * FROM customers
WHERE customer_name LIKE '%en';
通配符
_
通配符表示单个字符。
它可以是任何字符或数字,但每个 _
代表一个,而且只能代表一个字符。
实例
返回一个城市的所有客户,该城市以 'L' 开头,后跟一个通配符,然后是 'nd',然后是两个通配符:
SELECT * FROM customers
WHERE city LIKE 'L_nd__';