程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> javaee-內連接、左連接、右連接的哪個性能更好?(Oracle)

javaee-內連接、左連接、右連接的哪個性能更好?(Oracle)

編輯:編程解疑
內連接、左連接、右連接的哪個性能更好?(Oracle)

圖片說明

執行計劃的cost,都是一樣啊。。。

最佳回答:


具體用哪個連接,要根據實際情況和表內容情況而定。
你這裡測試出來的cost一樣,那是因為你兩張表內容一致,連接條件剛好都滿足,兩張表根據連接都能找到相對應字段,所以測出來是一樣的。
舉個例子:當你的deptno這個屬性,在兩個表裡沒法完全對應的時候就不一樣了。
比如你在dept這個表裡,有deptno=10的條目記錄,在emp中沒有deptno=10的條目記錄,那你查詢時候你是否想將這個記錄查詢出來?
這種情況,內連是查不出來的,直接沒顯示在結果上,左連以左表為主,會顯示出來,但右表列屬性以空顯示,右連以右表為主,也顯示不出來。
同理,在emp表裡,有deptno=10的條目記錄,在dept中沒有deptno=10的條目記錄,
這種情況,內連是查不出來的,直接沒顯示在結果上,左連以左表為主,也不會顯示出來,右連以右表為主,就能顯示出來,但左表列屬性以空顯示。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved