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];
示例:
我们有两个表" STUDENT"和" DEPARTMENT"。
" STUDENT"表包含以下数据:
"部门"表具有以下数据:
示例1: 返回单个字段
这个简单的示例仅从多个SELECT语句中返回一个字段,而这两个字段具有相同的数据类型。
让我们采用上面的两个表" STUDENT"和" DEPARTMENT"并选择来自两个表的ID,以创建 UNION ALL。
SELECT ID FROM STUDENT
UNION ALL
SELECT ID FROM DEPARTMENT;
输出:
示例2: 带有内部和外部联接的UNION ALL
让我们将上面的两个表" STUDENT"和" DEPARTMENT"与下面的条件以及 UNION一起进行内部联接和外部联接全部条款:
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;
输出: