PostgreSQL IN、Not IN 举例说明

什么是 PostgreSQL 在 ?

IN 运算符用于 WHERE 子句中,允许检查某个值是否存在于其他值列表中。 Operation 有助于减少 SELECT、UPDATE、INSERT 或 DELETE 语句中对多个 OR 条件的需要。

句法

IN 运算符采用以下语法:

value IN (value_1, value_2, ...)

该值是您在列表中检查的值。

value_1、value_2… 是列表值。

如果在列表中找到该值,则运算符将返回 true。

该列表可以是一组字符串,也可以是 选择语句 如下图所示:

value IN (SELECT value FROM table-name);

括号内的语句称为子查询。

具有特色

让我们演示如何将 IN 运算符与字符值一起使用。

请考虑下表:

员工人数:

PostgreSQL 与角色一起

让我们针对上表运行以下查询:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

它返回以下内容:

PostgreSQL 与角色一起

我们有一个包含三个姓名的列表。我们正在搜索是否可以在 Employees 表的 name 列中找到这些姓名中的任何一个。Kate Joel 与表的一条记录匹配,并返回了其详细信息。

使用数字

现在,让我们看看如何将 IN 运算符与数值一起使用。

考虑下面给出的价格表:

价格:

PostgreSQL 使用数字

我们可以对该表运行以下查询:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

这将返回以下内容:

PostgreSQL 使用数字

我们创建了一个包含 4 个数值的列表。我们正在检查是否可以将这些值中的任何一个与 Price 表的价格列中包含的值匹配。两个值匹配,并返回了它们的详细信息。

使用 NOT 运算符

IN 运算符可以与 NOT 运算符一起使用。它返回在指定列中未找到的值。我们将使用 Price 表来演示这一点。

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

这将返回以下内容:

PostgreSQL 使用 NOT 运算符

我们创建了一个包含 4 个数值的列表。我们正在检查价格表的价格列中是否存在不属于该列表的值。未找到两个值 250 和 300。因此已返回它们的详细信息。

使用 pgAdmin

现在让我们看看如何使用 pgAdmin 执行操作。

具有特色

要通过 pgAdmin 完成相同操作,请执行以下操作:

步骤1) 登录您的 pgAdmin 帐户。

步骤2)

  1. 从左侧导航栏中单击数据库。
  2. 单击“演示”。

使用字符 pgAdmin

步骤3) 在查询编辑器中输入查询:

SELECT *
FROM Employees
WHERE name IN ('James John', 'Mercy Bush', 'Kate Joel');

步骤4) 单击执行按钮。

使用字符 pgAdmin

它应该返回以下内容:

使用字符 pgAdmin

使用数字

要通过 pgAdmin 完成相同操作,请执行以下操作:

步骤1) 登录您的 pgAdmin 帐户。

步骤2)

  1. 从左侧导航栏中单击数据库。
  2. 单击“演示”。

使用 pgAdmin 与数字

步骤3) 在查询编辑器中输入查询:

SELECT *
FROM Price
WHERE price IN (200, 308, 250, 550);

步骤4) 单击执行按钮。

使用 pgAdmin 与数字

它应该返回以下内容:

使用 pgAdmin 与数字

使用 NOT 运算符

要通过 pgAdmin 完成相同操作,请执行以下操作:

步骤1) 登录您的 pgAdmin 帐户。

步骤2)

  1. 从左侧导航栏中单击数据库。
  2. 单击“演示”。

使用 NOT 运算符

步骤3) 在查询编辑器中输入查询:

SELECT *
FROM Price
WHERE price NOT IN (200, 400, 190, 230);

步骤4) 单击执行按钮。

使用 NOT 运算符

它应该返回以下内容:

使用 NOT 运算符

总结

  • IN 运算符与 WHERE 运算符一起使用。它允许检查特定表中是否存在特定值。
  • IN 运算符有助于减少 SELECT、UPDATE、INSERT 或 DELETE 语句中对多个 OR 运算符的需求。
  • 创建字符列表来检查值是否存在时,列表中的每个值都应用单引号引起来。
  • IN 运算符也可以与数值一起使用。
  • 当 IN 运算符与 NOT 运算符一起使用时,它将返回在指定列中未找到的所有值。

下载本教程使用的数据库

每日Guru99新闻简报

通过立即获取最新、最重要的人工智能新闻报道来开始您的一天。