5.1 多表数据合并 UNION
2020年3月31日
10:42
1、将2张表合并 (不去重复)
SELECT * FROM `1班` UNION ALL SELECT * FROM `2班`;
2、将2张表合并 (去重复)
SELECT * FROM `1班` UNION  SELECT * FROM `2班`;
总结：
UNION ALL 不去重
UNION 去重
注意事项：
1、不管是UNION还是UNION ALL，都要求SELECT语句拥有相同的列数，而且字段的排放顺序必须相同。
2、如果两张原始表的顺序不一致，你需要手动在SELECT后面写字段强行把他顺序变成一致。
例如：
SELECT 姓名,语文 FROM `1班` UNION ALL SELECT 姓名,语文 FROM `2班`;
3、列的名字或别名，是由第一个Select语句的选择列表决定的。
4、ORDER BY子句，必需放在最后一个Select后面
5、如果你遇到了列不一致的情况，如何处理？
SELECT 姓名,语文,数学,英语  FROM `1班` UNION ALL SELECT 姓名,语文,NULL,英语 FROM `2班`
SELECT 姓名,语文,数学,英语  FROM `1班` UNION ALL SELECT 姓名,语文,'未考',英语  FROM `2班`