UNION与UNION ALL的区别

原始数据:
在这里插入图片描述
UNION ALL 行转列后:

SELECT userid,'语文' AS course,cn_score AS score FROM tb_score1
UNION ALL
SELECT userid,'数学' AS course,math_score AS score FROM tb_score1
UNION ALL
SELECT userid,'英语' AS course,en_score AS score FROM tb_score1
UNION ALL
SELECT userid,'政治' AS course,po_score AS score FROM tb_score1
ORDER BY userid

在这里插入图片描述
区别:

1.对重复结果的处理:UNION会去掉重复记录,UNION ALL不会

2.对排序的处理:UNION会排序,UNION ALL只是简单地将两个结果集合并

3.效率方面的区别:因为UNION 会做去重和排序处理,因此效率比UNION ALL慢很多


版权声明:本文为qq_43380361原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。