日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

转:Oracle 中union的用法

發布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 转:Oracle 中union的用法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UNION 指令的目的是將兩個 SQL 語句的結果合并起來,可以查看你要的查詢結果.

例如:

SELECT Date FROM Store_Information
UNION
SELECT Date FROM Internet_Sales

注意:union用法中,兩個select語句的字段類型匹配,而且字段個數要相同,如上面的例子,在實際的軟件開發過程,會遇到更復雜的情況,具體請看下面的例子

select? '1' as type,FL_ID,FL_CODE,FL_CNAME,FLDA.FL_PARENTID from FLDA
WHERE ZT_ID=2006030002
union?
select? '2' as type,XM_ID,XM_CODE ,XM_CNAME ,FL_ID from XMDA
where exists (select * from (select? FL_ID from FLDA WHERE ZT_ID=2006030002 ) a where XMDA.fl_id=a.fl_id)
order by type,FL_PARENTID ,FL_ID

這個句子的意思是將兩個sql語句union查詢出來,查詢的條件就是看XMDA表中的FL_ID是否和主表FLDA里的FL_ID值相匹配,(也就是存在).

UNION在進行表鏈接后會篩選掉重復的記錄,所以在表鏈接后會對所產生的結果集進行排序運算,刪除重復的記錄再返回結果。

在查詢中會遇到 UNION ALL,它的用法和union一樣,只不過union含有distinct的功能,它會把兩張表了重復的記錄去掉,而union all不會,所以從效率上,union all 會高一點,但在實際中用到的并不是很多.

表頭會用第一個連接塊的字段。。。。。。。。。。

而UNION ALL只是簡單的將兩個結果合并后就返回。這樣,如果返回的兩個結果集中有重復的數據,那么返回的結果集就會包含重復的數據了。

  從效率上說,UNION ALL 要比UNION快很多,所以,如果可以確認合并的兩個結果集中不包含重復的數據的話,那么就使用UNION ALL,如下:

盡量使用union all,因為union需要進行排序,去除重復記錄,效率低

轉載于:https://www.cnblogs.com/qinse/p/4409054.html

總結

以上是生活随笔為你收集整理的转:Oracle 中union的用法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。