Tôi có một truy vấn sql thực hiện rất kém. Tôi đã theo dõi nó xuống INNER JOIN được thực hiện trên bàn. Thay đổi này sang trái tham gia tăng đáng kể hiệu suất (từ 6 phút 20 giây) - bây giờ tôi biết 2 không equiv, nhưng ... đây là những gì tôi đang hỏiCâu hỏi SQL bên trong vs bên trái
SELECT *
FROM SomeTable ST
JOIN BigTable BT ON BT.SomeID = ST.SomeID
AND BT.Something = ST.Something
AND BT.AnotherValue = '123'
Kể từ khi tham gia có tiêu chí bổ sung (và cái gì đó = cái gì đó) - đang thay đổi điều này thành một phép nối trái tạo ra cùng một kết quả - nhưng MUCH nhanh hơn?
Các kết quả trả về đều giống nhau sử dụng LEFT/INNER với trái là nhanh hơn đáng kể ...
Điều này thật kì lạ, vì trong hầu hết các trường hợp, 'INNER JOIN' hoạt động tốt hơn. 'OUTER JOIN' phải trả về các hàng ngay cả khi không có kết quả khớp. Bạn có chắc chắn không có nhiều điều này hơn loại tham gia không? – Yuck
YUP, im lẫn hơn bao giờ hết - số lần đọc logic giảm xuống hàng triệu (nhiều triệu) – user822150
bạn có thể đăng kế hoạch thực hiện cho cả hai? – Thilo