SqlServer教程

SQLServer INTERSECT

在SQLServer中,INTERSECT运算符用于获取两个SELECT语句或数据集之间的公用记录。如果一条记录存在于一个查询中,而另一个查询中不存在,则从INTERSECT结果中将其省略。
语法:
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]
INTERSECT
SELECT expression1, expression2, ... expression_n
FROM tables
[WHERE conditions]; 

参数说明

expression1,expression2,... expression_n: 表达式指定要在两个SELECT语句之间进行比较的列或计算。每个SELECT语句中不必具有相同的字段,但是两个表中的对应列必须是相似的数据类型。
表: : 它指定要从中检索记录的表。在FROM子句中必须至少列出一个表。
WHERE条件: 这是可选条件。它指定了选择记录所必须满足的条件。
图像表示:
SQL相交运算符1
注意: 重叠的蓝色字段指定相交数据。

相交操作的必要条件

两个SELECT语句中的表达式数量必须相同。 每个SELECT语句中的对应列必须具有相似的数据类型。 INTERSECT运算符仅获取SELECT语句的公共记录。

具有单个表达式的INTERSECT运算符

示例:
SELECT name
FROM [lidihuo].[dbo].[Employees]
INTERSECT
SELECT name
FROM [lidihuo].[dbo].[Employee2]; 
输出:
SQL Intersect运算符2

具有单个表达式的INTERSECT运算符

SELECT id, name, salary
FROM [lidihuo].[dbo].[Employees]
WHERE salary >= 15000
INTERSECT
SELECT id, name, salary
FROM [lidihuo].[dbo].[Employee2]
输出:
SQL Intersect运算符3
它显示为空白,因为它们之间没有什么共同之处查询。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4