PostgreSQL 教程

浏览26119
更新时间2025-08-21

PostgreSQL LIKE 运算符用于将文本值与使用通配符的模式进行匹配。 如果搜索表达式可以匹配到模式表达式,则 LIKE 运算符将返回 true,即 1

有两个通配符与 LIKE 运算符一起使用 −

  • 百分号 (%)
  • 下划线 (_)

百分号表示零、一个或多个数字或字符。 下划线表示单个数字或字符。 这些符号可以组合使用。

如果这两个符号中的任何一个没有与 LIKE 子句一起使用,则 LIKE 的作用类似于等号运算符。


语法

% 和 _ 的基本语法如下 −

SELECT FROM table_name
WHERE column LIKE 'XXXX%'

or

SELECT FROM table_name
WHERE column LIKE '%XXXX%'

or

SELECT FROM table_name
WHERE column LIKE 'XXXX_'

or

SELECT FROM table_name
WHERE column LIKE '_XXXX'

or

SELECT FROM table_name
WHERE column LIKE '_XXXX_'

您可以使用 AND 或 OR 运算符组合 N 个条件。 这里 XXXX 可以是任何数字或字符串值。


示例

以下是显示 WHERE 部分具有不同 LIKE 子句和 '%' 和 '_' 运算符的示例数量 −

S. No. Statement & Description
1

WHERE SALARY::text LIKE '200%'

查找以 200 开头的任何值

2

WHERE SALARY::text LIKE '%200%'

查找在任何位置具有 200 的任何值

3

WHERE SALARY::text LIKE '_00%'

查找在第二个和第三个位置具有 00 的任何值

4

WHERE SALARY::text LIKE '2_%_%'

查找以 2 开头且长度至少为 3 个字符的任何值

5

WHERE SALARY::text LIKE '%2'

查找以 2 结尾的任何值

6

WHERE SALARY::text LIKE '_2%3'

查找第二个位置为 2 且以 3 结尾的任何值

7

WHERE SALARY::text LIKE '2___3'

查找以 2 开头并以 3 结尾的五位数字中的任何值

Postgres LIKE 仅是字符串比较。 因此,我们需要将整数列显式转换为字符串,如上面的示例所示。

让我们举一个真实的例子,考虑表COMPANY,有如下记录 −

# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

以下是一个示例,它将显示 COMPANY 表中 AGE 以 2 开头的所有记录 −

testdb=# SELECT * FROM COMPANY WHERE AGE::text LIKE '2%';

这将产生以下结果 −

 id | name  | age | address     | salary
----+-------+-----+-------------+--------
  2 | Allen |  25 | Texas       |  15000
  3 | Teddy |  23 | Norway      |  20000
  4 | Mark  |  25 | Rich-Mond   |  65000
  5 | David |  27 | Texas       |  85000
  6 | Kim   |  22 | South-Hall  |  45000
  7 | James |  24 | Houston     |  10000
  8 | Paul  |  24 | Houston     |  20000
(7 rows)

以下是一个示例,它将显示 COMPANY 表中的所有记录,其中 ADDRESS 将在文本中包含一个连字符 (-) −

testdb=# SELECT * FROM COMPANY WHERE ADDRESS  LIKE '%-%';

这将产生以下结果 −

 id | name | age |                      address              | salary
----+------+-----+-------------------------------------------+--------
  4 | Mark |  25 | Rich-Mond                                 |  65000
  6 | Kim  |  22 | South-Hall                                |  45000
(2 rows)

相关视频

更多

免费

phpStudy极速入门视频教程
初级phpStudy极速入门视频教程

54.5万次学习

收藏

免费

phpStudy V8 视频教程
初级phpStudy V8 视频教程

38.6万次学习

收藏

免费

小皮面板使用视频教程
初级小皮面板使用视频教程

21.4万次学习

收藏

免费

好课诞生记
初级好课诞生记

7万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

64.9万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

41.2万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76.6万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

64.1万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.3万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

36.2万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

133.1万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载