📜  SQL Server不是运算符

📅  最后修改于: 2020-12-02 04:54:11             🧑  作者: Mango

SQL Server NOT条件(运算符)

SQL Server NOT条件或NOT运算符用于否定SELECT,INSERT,UPDATE或DELETE语句中的条件。

句法:

NOT condition 

参数说明

condition:它指定要否定的条件。

非条件为IN的运算符

我们有一个“雇员”表,其中包含以下数据:

从满足以下“否”条件的表中检索所有雇员:

SELECT *
FROM [javatpoint].[dbo].[Employees]
WHERE name NOT IN ('Mahesh', 'Mohan', 'Chitra');

输出:

条件为IS NULL的NOT运算符

从遵循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%'; 

输出:

NOT运算符的条件为BETWEEN

从表“ 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表中没有匹配名称和薪水的记录。