推 foxzgerald:在 MySQL 可以用 EXPLAIN 取得 "select" 的執行資訊 11/16 11:14
※ 引述《delicate (泡沫愛情)》之銘言:
: 用 LEFT JOIN 還是 巢狀式query 比較好??
: SELECT TB1.fd1
: FROM TB1 LEFT JOIN TB2 ON TB1.fd1 = TB2.fd2
: WHERE TB2.fd2 IS NULL
: 還是
: SELECT TB1.fd1
: FROM TB1
: WHERE TB1.fd1 NOT IN (SELECT TB2.fd2 FROM TB2)
不知道上面兩種做法哪個好,
但是用 exists 取代 in 效率比較好(好像跟資料庫用不用索引有關)
SELECT TB1.fd1
FROM TB1
WHERE exists ( SELECT 1 FROM TB2.fd2 FROM TB2 WHERE TB2.fd2=TB1.fd1 )
以上,網路上看來的,我也不知道怎麼測試
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.61.172.157