1 回答

TA貢獻(xiàn)44條經(jīng)驗(yàn) 獲得超73個(gè)贊
1、UNION用的比較多
語(yǔ)法如下:
select employee_id,job_id from employees?
union?
select employee_id,job_id from job_history
2、union?all是直接連接,取到得是所有值,記錄可能有重復(fù)。
語(yǔ)法如下:
select * from emp where deptno >= 20?
union all?
select * from emp where deptno <= 30?
注意:union?是取唯一值,記錄沒(méi)有重復(fù)
詳細(xì)解釋:
1、UNION和UNION ALL關(guān)鍵字都是將兩個(gè)結(jié)果集合并為一個(gè),但這兩者從使用和效率上來(lái)說(shuō)都有所不同。
2、對(duì)重復(fù)結(jié)果的處理:UNION在進(jìn)行表鏈接后會(huì)篩選掉重復(fù)的記錄,Union All不會(huì)去除重復(fù)記錄。
3、對(duì)排序的處理:Union將會(huì)按照字段的順序進(jìn)行排序;UNION ALL只是簡(jiǎn)單的將兩個(gè)結(jié)果合并后就返回。
4、從效率上說(shuō),UNION ALL 要比UNION快很多,所以,如果可以確認(rèn)合并的兩個(gè)結(jié)果集中不包含重復(fù)數(shù)據(jù)且不需要排序時(shí)的話,那么就使用UNION ALL。
望采納~ 嘿嘿
添加回答
舉報(bào)