Tôi nghĩ rằng bạn có một chút nhầm lẫn, bạn đang có một ý tưởng sai lầm, 'EXISTS' hoạt động nhanh hơn 'IN' và tôi đang cố gắng làm cho bạn hiểu lý do ..
EXISTS trả về một boolean và sẽ trả về một boolean trong trận đấu đầu tiên. Vì vậy, nếu bạn đang xử lý các bản sao / bội số, 'EXISTS' sẽ thực thi nhanh hơn so với 'IN' hoặc 'JOIN' tùy thuộc vào dữ liệu và nhu cầu.
Trong khi, 'IN' là đường cú pháp cho mệnh đề OR. Mặc dù nó rất phù hợp, nhưng có một số vấn đề khi xử lý rất nhiều giá trị cho phép so sánh đó (phía bắc là 1.000). đó là lý do tại sao 'IN' luôn tương đối chậm hơn so với 'EXISTS'.
Tôi hy vọng rằng tôi đã làm rõ sự nhầm lẫn của bạn.