[SQL ] Join 和 in的選擇

看板Database作者 (阿仁)時間14年前 (2011/07/10 20:09), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
大家好 我想問一下 假設今天有兩個 Tables T1 T2 ----------- ----------------- ID Gender ID Height Date 1 M 1 123 01/01 1 125 02/01 1 127 03/01 2 F 2 130 01/01 2 133 02/01 2 136 03/01 假設今天我們只要女生的 Height 和 Date 那大家會用 (1) Select T2.Height, T2.Date From T1, T2 Where T1.ID = T2.ID and T1.Gender = 'F' (2) Select T2.Height, T2.Date From T2 Where T2.ID in (Select T1.ID From T1 Where T1.Gender = 'F') 因為我在想這兩種寫法效率是不是第二種比較好??? 想請教大家一下 謝謝 附帶一提,我的T1有很多欄位 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.24.19.154 ※ 編輯: glennchen 來自: 114.24.19.154 (07/10 20:14)

07/10 21:01, , 1F
看一下Execution Plan, 應該是1會比較好
07/10 21:01, 1F

07/10 23:11, , 2F
我的T1大約有三四千筆,然後T2上萬筆然後會一直增加
07/10 23:11, 2F

07/10 23:21, , 3F
我主要是怕Join的速度啦
07/10 23:21, 3F

07/11 00:43, , 4F
有什麼令你覺得 join 的速度會比 in subselect 還慢?
07/11 00:43, 4F
文章代碼(AID): #1E6PPwq2 (Database)