比如有3个表连接查询,表名分别叫tab_1,tab_2,tab_3
select 'tab_1' tabname,tab_1.* form tab_1
union all
select 'tab_2' tabname,tab_2.* form tab_2
union all
select 'tab_3' tabname,tab_3.* form tab_3
tabname就表示数据来源于哪个表
UNION与UNION ALL的区别:
1、对重复结果的处理:UNION在进行表链接后会去重,UNION All不会。
2、对排序的处理:Union将会按照字段的顺序进行排序;UNION ALL只是简单的将两个结果合并后就返回。
UNION ALL 要比UNION效率高,所以,如果可以确认合并的两个结果集中不包含重复数据且不需要排序时的话,那么就使用UNION ALL。
本文详细解析了SQL中UNION与UNION ALL的区别,包括它们对重复结果的处理方式及排序特性。UNION在合并数据时会自动去除重复记录并排序,而UNION ALL则直接合并所有记录,效率更高,适用于无需去重和排序的场景。
677

被折叠的 条评论
为什么被折叠?



