PostgreSQL LIKE 运算符

LIKE

WHERE 子句中使用 LIKE 运算符来搜索列中的指定模式。

有两个通配符经常与 LIKE 运算符一起使用:

  • % 百分号表示零个、一个或多个字符
  • _ 下划线表示一个字符

开始

要返回以特定字母或短语开头的记录,请在字母或短语末尾添加 %

实例

返回名称以字母 'A' 开头的所有客户:

  1. SELECT * FROM customers
  2. WHERE customer_name LIKE 'A%';

包含

要返回包含特定字母或短语的记录,请在字母或短语之前和之后添加 %

实例

返回名称中包含字母 'A' 的所有客户:

  1. SELECT * FROM customers
  2. WHERE customer_name LIKE '%A%';

ILIKE

注意LIKE 运算符区分大小写,如果要进行不区分大小写的搜索,请改用 ILIKE 运算符。
实例

返回名称中包含字母 'A' 或 'a' 的所有客户:

  1. SELECT * FROM customers
  2. WHERE customer_name ILIKE '%A%';

结尾

若要返回以特定字母或短语结尾的记录,请在字母或短语之前添加 %

实例

返回名称以 'en' 结尾的所有客户:

  1. SELECT * FROM customers
  2. WHERE customer_name LIKE '%en';

通配符

_ 通配符表示单个字符。

它可以是任何字符或数字,但每个 _ 代表一个,而且只能代表一个字符。

实例

返回一个城市的所有客户,该城市以 'L' 开头,后跟一个通配符,然后是 'nd',然后是两个通配符:

  1. SELECT * FROM customers
  2. WHERE city LIKE 'L_nd__';