join
xảy ra trước where
, tuy nhiên ...
where
mệnh đề là một bộ lọc cho tất cả các hàng được trả về bởi tham gia, nhưng trình tối ưu hóa sẽ nhận ra rằng nếu một chỉ mục tồn tại trên A.id
, nó sẽ được sử dụng để truy xuất các hàng từ A
khớp đó, sau đó phép nối sẽ xảy ra, về mặt lý thuyết mệnh đề where sẽ lọc kết quả, nhưng một lần nữa trình tối ưu hóa sẽ nhận ra rằng điều kiện đã được đáp ứng nên nó sẽ bỏ qua nó như một bộ lọc.
Tất cả những gì đã nói, trình tối ưu hóa sẽ luôn trả về cùng một kết quả giống như sẽ được trả về mà không có trình tối ưu hóa.