📅  最后修改于: 2020-12-02 04:54:11             🧑  作者: Mango
SQL Server NOT条件或NOT运算符用于否定SELECT,INSERT,UPDATE或DELETE语句中的条件。
句法:
NOT condition
condition:它指定要否定的条件。
我们有一个“雇员”表,其中包含以下数据:
例
从满足以下“否”条件的表中检索所有雇员:
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE name NOT IN ('Mahesh', 'Mohan', 'Chitra');
输出:
从遵循IS NOT NULL条件的“ Employees”表中检索所有雇员:
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE name IS NOT NULL;
输出:
从符合“不喜欢”条件的表“雇员”中检索所有雇员。它只会显示不以“ M”开头的名称。
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE name NOT LIKE 'M%';
输出:
从表“ Employees”中检索所有雇员,其遵循以下条件。它不会显示ID在8到13之间的员工。
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE id NOT BETWEEN 8 AND 13;
输出:
要么
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE id < 8
OR id > 13;
输出:
您还可以将SQL Server NOT条件与EXISTS条件结合使用。
或条件:
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE NOT EXISTS (SELECT *
FROM [javatpoint].[dbo].[Employee2]
WHERE Employees.name = Employee2.name
OR Employees.salary = Employee2.salary);
输出:
与条件:
SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE NOT EXISTS (SELECT *
FROM [javatpoint].[dbo].[Employee2]
WHERE Employees.name = Employee2.name
AND Employees.salary = Employee2.salary);
输出:
此SQL Server NOT示例将从Employees表返回所有记录,其中Employee2表中没有匹配名称和薪水的记录。