Tôi vừa có một truy vấn khá phức tạp mà tôi đang làm việc và đã mất 8 giây để chạy. GIẢI THÍCH đã cho thấy một thứ tự bảng lạ và các chỉ mục của tôi không được sử dụng ngay cả với gợi ý FORCE INDEX. Tôi đã xem qua từ khóa tham gia STRAIGHT_JOIN và bắt đầu thay thế một số từ khóa INNER JOIN của tôi bằng từ khóa đó. Tôi nhận thấy sự cải thiện đáng kể về tốc độ. Cuối cùng, tôi chỉ thay thế tất cả từ khóa INNER JOIN của mình bằng STRAIGHT_JOIN cho truy vấn này và bây giờ nó chạy trong 0,01 giây.Khi nào sử dụng STRAIGHT_JOIN với MySQL
Câu hỏi của tôi là khi nào bạn sử dụng STRAIGHT_JOIN và khi nào bạn sử dụng INNER JOIN? Có lý do nào để không sử dụng STRAIGHT_JOIN nếu bạn đang viết các truy vấn tốt không?
Cảm ơn, lời giải thích tuyệt vời. – Greg
Câu trả lời này không thực sự giải thích ** khi nào nên sử dụng ** 'straight_join'. – Pacerier