📜  MS SQL Server中的联合和联合全部

📅  最后修改于: 2021-08-25 10:27:35             🧑  作者: Mango

1.联盟:
联合表示将两个或多个数据集合并为一个集合。在SQL Server中,联合用于使用select语句将两个查询合并为一个结果集。联合提取查询中描述的所有行。

句法 –

query1 UNION query2

在查询中使用Union之前,它需要满足一些条件。一种这样的条件是要提取的行必须来自表中的相同列。

例子 –

select name, rollnumber 
from student 
UNION 
select name, rollnumber 
from marks


表–学生

Name Rollnumber Course
Maya 111 CSE
Riya 112 Mech


表–标记

Name Rollnumber Marks
Maya 111 8.9
Riya 112 7.8

输出 –

Name Rollnumber Name Rollnumber
Maya 111 Maya 111
Riya 112 Riya 112

此处使用两个不同的表来提取行,但是指定用于提取的列对于两者都是相同的。如果使用不同的列,则会发生错误。两个查询指定的数据类型也必须相同。

2.联合所有:
联合用于使用查询中指定的条件提取行,而联合全部用于从一组两个表中提取所有行。

句法 –

query1 UNION ALL query2

相同条件适用于Union All。 Union和Union All之间的唯一区别是Union提取了查询中指定的行,而Union All提取了两个查询中包括重复项(重复值)的所有行。