📅  最后修改于: 2020-11-13 00:33:39             🧑  作者: Mango
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];
例:
我们有两个表“ STUDENT”和“ DEPARTMENT”。
“学生”表具有以下数据:
“部门”表具有以下数据:
示例1:返回单个字段
这个简单的示例仅从多个SELECT语句中返回一个字段,而这两个字段具有相同的数据类型。
让我们采用以上两个表“ STUDENT”和“ DEPARTMENT”,并从两个表中选择id以使UNION ALL。
SELECT ID FROM STUDENT
UNION ALL
SELECT ID FROM DEPARTMENT;
输出:
示例2:具有内部和外部联接的UNION ALL
让我们采用以上两个表“ STUDENT”和“ DEPARTMENT”,并根据以下条件以及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;
输出: