个性化阅读
专注于IT技术分析

DBMS SQL集合操作

SQL Set操作用于组合两个或多个SQL SELECT语句。

设置操作的类型

  1. 联盟
  2. UnionAll
  3. 相交
  4. 减去
DBMS SQL集合操作

1.联盟

  • SQL Union操作用于合并两个或多个SQL SELECT查询的结果。
  • 在联合操作中, 在两个应用了UNION操作的表中, 数据类型和列的所有数量必须相同。
  • 联合操作从其结果集中消除重复的行。

句法

SELECT column_name FROM table1
UNION
SELECT column_name FROM table2;

例:

第一张桌子

ID NAME
1 Jack
2 Harry
3 Jackson

第二张桌子

ID NAME
3 Jackson
4 Stephan
5 David

Union SQL查询将是:

SELECT * FROM First 
UNION
SELECT * FROM Second;

结果集表如下所示:

ID NAME
1 Jack
2 Harry
3 Jackson
4 Stephan
5 David

2.联合所有

联合所有操作等于联合操作。它不删除重复项和对数据进行排序就返回该集合。

句法:

SELECT column_name FROM table1
UNION ALL
SELECT column_name FROM table2;

示例:使用上面的第一个和第二个表。

Union All查询将类似于:

SELECT * FROM First 
UNION ALL
SELECT * FROM Second;

结果集表如下所示:

ID NAME
1 Jack
2 Harry
3 Jackson
3 Jackson
4 Stephan
5 David

3.相交

  • 它用于合并两个SELECT语句。 Intersect操作从两个SELECT语句返回公共行。
  • 在“相交”操作中, 数据类型和列的数量必须相同。
  • 它没有重复项, 并且默认情况下它按升序排列数据。

句法

SELECT column_name FROM table1
INTERSECT
SELECT column_name FROM table2;

例:

使用上面的第一和第二表。

相交查询将是:

SELECT * FROM First 
INTERSECT
SELECT * FROM Second;

结果集表如下所示:

ID NAME
3 Jackson

4.减号

  • 它合并了两个SELECT语句的结果。减号运算符用于显示第一个查询中存在但第二个查询中不存在的行。
  • 默认情况下, 它没有重复项和数据以升序排列。

句法:

SELECT column_name FROM table1
MINUS
SELECT column_name FROM table2;

使用上面的第一和第二表。

减查询将是:

SELECT * FROM First 
MINUS
SELECT * FROM Second;

结果集表如下所示:

ID NAME
1 Jack
2 Harry
赞(0)
未经允许不得转载:srcmini » DBMS SQL集合操作

评论 抢沙发

评论前必须登录!