[SQL ] 使用迴圈去Left join的效能消失

看板Database作者時間7年前 (2018/09/09 17:31), 7年前編輯推噓3(302)
留言5則, 2人參與, 最新討論串1/1
各位大大好, 小弟是SQL的新手想要問個問題, 今天我有一個Table A要去Left join一個Table B, 因為兩個Table的筆數都很多所以產出結果的時間會很慢, 有朋友建議我可以用迴圈的方式, 讓Table A可以一筆一筆逐一地去left join Table B, 請問用迴圈的方式去Join跟一次全部一起Join哪一個的效能會比較好呢? 因為我在想如果是一筆一筆逐一去Join的話, 等於我每一筆都要去做一次select, 這樣的話不就會變慢嗎? 因為對SQL還沒有說特別熟, 有錯的地方還煩請各位大大指正了, 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.71.212.75 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1536485464.A.BB3.html ※ 編輯: tmac41103 (219.71.212.75), 09/09/2018 17:32:11

09/09 19:45, , 1F
重點是有索引
09/09 19:45, 1F

09/09 19:47, , 2F
一筆一筆join校能不會比較快呀,反而會慢
09/09 19:47, 2F

09/10 20:55, , 3F
能直接join 然後去調校sql 是最好的
09/10 20:55, 3F

09/10 20:56, , 4F
但是真的不行的話 先讀A table 再透過id去逐筆找B也可
09/10 20:56, 4F

09/10 20:57, , 5F
只是一頁的筆數不要太多就好
09/10 20:57, 5F
文章代碼(AID): #1RbEXOkp (Database)