UNION是先将两个结果集并起来,然后把其中重复的数据删除掉后,再展示出来。
UNION ALL 则是直接将结果集并起来,而不会去删除重复数据。
而从效率上面来说的话,第一种的效率是低于第二种的效率的,但是从保证数据的有效性来说,第二种更具保险性
A : {1, 2, 3, 4, 5}
B : {4, 5, 6, 7}
SELECT * FROM A UNION SELECT * FROM B;
结果为{1, 2, 3, 4, 5, 6, 7}
SELECT * FROM A UNION ALL SELECT * FROM B;
结果为{1, 2, 3, 4, 5, 4, 5, 6, 7}