📅  最后修改于: 2020-11-30 08:59:45             🧑  作者: Mango
在本节中,我们将了解PostgreSQL NOT IN条件的工作原理,以及带有Numeric和字符值的Not IN条件的示例。
PostgreSQL NOT IN条件与WHERE子句一起使用,以从已定义条件与PostgreSQL IN条件矛盾的表中获取数据。
在PostgreSQL中,NOT IN条件可以与SELECT,INSERT,UPDATE和DELETE命令一起使用。
expression NOT IN (value1, value2, .... valueN);
PostgreSQL NOT IN运算符用于获取其值与列表值不匹配的那些行。
为此,我们从Javatpoint数据库获取部门表。
下面的示例显示Not IN Operator用于标识emp_id既不是1也不是2的部门信息:
SELECT emp_id, dept_id, emp_fname, dept_name
FROM department
WHERE emp_id NOT IN (1, 2)
ORDER BY dept_name DESC;
输出量
执行上述命令后,我们将获得以下输出,显示emp_id既不是1也不是2的那些记录。
同样,我们也可以使用AND运算符和NOT EQUAL(<>)运算符,而不是NOT IN运算符,如下面的语句所示:
SELECT emp_id, dept_id, emp_fname, dept_name
FROM department
WHERE emp_id <> 1 AND emp_id <> 2
ORDER BY dept_name DESC;
输出量
在实现上述语句时,与上述查询输出相比,我们将获得类似的输出:
为此,我们使用上面的employee表来获取emp_fname与James,Mia员工无关的员工信息。
我们在WHERE子句中使用NOT IN运算符,因为可以看到以下命令:
SELECT emp_id, emp_fname, emp_lname
FROM employee
WHERE emp_fname NOT IN ('James', 'Mia')
ORDER BY emp_id;
输出量
执行上述命令后,我们将得到以下结果:
在上面的示例中,PostgreSQL NOT IN条件将返回employee表中emp_fname既不是‘James’也不是’Mia’的所有行。
在PostgreSQL NOT IN Condition部分中,我们学习了以下主题: