PostgreSQL Like条件

在本节中,我们将了解PostgreSQL Like 条件的工作原理,该条件用于使用模式匹配获取数据,使用百分号 (%)、下划线 (_) 通配符的 like 条件示例,Not Like 运算符,ILIKE 的工作原理operator,以及PostgreSQL Like Operator的扩展。

PostgreSQL Like条件介绍

PostgreSQL Like 条件用于从定义的条件满足 LIKE 条件的表中获取数据。结果包含区分大小写并遵循指定模式的字符串。

换句话说,我们也可以说Like 条件用于执行模式匹配以识别确切的结果。

为了服务于模式匹配的目的,PostgreSQL提供了两种不同的通配符,分别是:

  • 百分比 (%) 通配符:匹配零个或多个字符的任意序列。
  • 下划线 (_) 通配符:匹配任何单个字符。

PostgreSQL Like 条件语法

在 PostgreSQL 中,Like 条件可以与 SELECT、INSERT、UPDATE 和 DELETE 命令以及 WHERE 子句一起使用。

expression LIKE pattern [ ESCAPE 'escape_character' ]    

在上面的语法中,使用了Like 条件,如果值匹配pattern ,那么表达式将返回true。

或者

我们可以使用NOT 运算符语法来反对LIKE运算符,如下所示:

expression NOT LIKE pattern[ ESCAPE 'escape_character' ]  

在上面的语法中,当值不匹配时使用Not Like条件,然后模式并返回true。

在上面的语法中,我们使用了以下参数:

参数 描述
Expression/ value 它用于定义列或字段。
Pattern 模式是一个字符表达式,其中包含模式匹配。
Escape_character Escape 字符是一个可选参数,它允许我们测试通配符的文字实例,例如 %(百分比)或 _(下划线)。

注意事项:

  • 如果我们不想指定 escape_character,PostgreSQL 假定“\”是 escape_character。
  • 如果模式没有任何通配符,则 Like 运算符的行为类似于等于“=”运算符。

使用百分比 (%) 通配符的 PostgreSQL Like 条件示例

让我们看一个例子来理解PostgreSQL Like 条件是如何工作的:

假设我们想识别一个员工,但我们没有准确记住他/她的名字。但我们知道他/她的名字以kat开头。

现在问题来了,我们如何从数据库中识别出特定的员工呢?

因此,我们可以通过查看emp_fname列来识别Employee表中的员工,以检查是否有任何以kat开头的值。

如果Employee表的行数很多,按照上面的流程,可能会耗费更多的时间。

因此,在下面的示例中,我们使用PostgreSQL Like 条件将员工的初始姓名与字符串匹配,正如我们在以下命令中看到的那样:

SELECT emp_fname, emp_lname  
FROM employee  
WHERE emp_fname LIKE 'Kat%';  

执行上面的命令后,我们会得到如下结果:

上面的语句返回emp_fname列中的值以Kat开头并且后面可以跟任何字符序列的行,称为模式匹配技术。

注意:

  • 我们可以通过将文字值与通配符连接起来来定义模式。
  • 要识别匹配项,我们可以使用LIKE 或 NOT LIKE运算符。
  • WHERE 子句可以有一个不同的表达式:emp_fname,其中LIKE 运算符和一个字符串有一个百分号 (%)。
  • 而'Kat%'字符串被称为模式。

热门文章

优秀文章