SQLite Union All语句

SQLite UNION ALL 运算符用于组合两个或多个 SELECT 语句的结果,而不忽略重复的行。

在SQLite UNION ALL中,结果表还包括重复值。否则,适用与联合相同的规则。

语法:

SELECT expression1, expression2, ... expression_n  
FROM tables  
[WHERE conditions]  
UNION ALL  
SELECT expression1, expression2, ... expression_n  
FROM tables  
[WHERE conditions];

示例:

我们有两个表格“学生”和“部门”。

“学生”表包含以下数据:

“部门”表包含以下数据:

示例 1:返回单个字段

这个简单的示例仅返回多个 SELECT 语句中的一个字段,其中两个字段具有相同的数据类型。

让我们取上面的两个表“学生”和“部门”,并从两个表中选择id以建立UNION ALL。

SELECT ID FROM STUDENT  
UNION ALL   
SELECT ID FROM DEPARTMENT;  

输出结果:

示例 2:具有内部和外部连接的 UNION ALL

让我们取上面的两个表“学生”和“部门”,并根据以下条件以及 UNION ALL 子句进行内联接和外联接:

SELECT EMP_ID, NAME, DEPT FROM STUDENT INNER JOIN DEPARTMENT  
ON STUDENT.ID = DEPARTMENT.EMP_ID  
UNION ALL  
SELECT EMP_ID, NAME, DEPT FROM STUDENT LEFT OUTER JOIN DEPARTMENT  
ON STUDENT.ID = DEPARTMENT.EMP_ID;   

输出结果:

热门文章

优秀文章