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

作者: tmac41103 (支持火箭,不離不棄)   2018-09-09 17:30:57
各位大大好, 小弟是SQL的新手想要問個問題,
今天我有一個Table A要去Left join一個Table B,
因為兩個Table的筆數都很多所以產出結果的時間會很慢,
有朋友建議我可以用迴圈的方式,
讓Table A可以一筆一筆逐一地去left join Table B,
請問用迴圈的方式去Join跟一次全部一起Join哪一個的效能會比較好呢?
因為我在想如果是一筆一筆逐一去Join的話,
等於我每一筆都要去做一次select, 這樣的話不就會變慢嗎?
因為對SQL還沒有說特別熟, 有錯的地方還煩請各位大大指正了, 謝謝
作者: rockchangnew (rock)   2018-09-09 19:45:00
重點是有索引一筆一筆join校能不會比較快呀,反而會慢
作者: liisi (小心一點)   2018-09-10 20:55:00
能直接join 然後去調校sql 是最好的但是真的不行的話 先讀A table 再透過id去逐筆找B也可只是一頁的筆數不要太多就好
作者: tmac41103 (支持火箭,不離不棄)   2018-09-10 23:54:00
了解了,感謝各位大大!另外想問一下,先讀A,再透過ID去找這種要怎麼做呢?因為我就是直接select tableA的欄位去join tableB

Links booklink

Contact Us: admin [ a t ] ucptt.com