Bạn không có bất kỳ nơi nào gần giới hạn THAM GIA cho MySQL. Số lần tham gia của bạn không tệ. Tuy nhiên, việc tham gia vào một bảng dẫn xuất (truy vấn con bên trong của bạn) khi bạn đang thực hiện có thể gây ra các vấn đề về hiệu suất, vì các bảng dẫn xuất không có chỉ mục. Việc thực hiện một phép nối trên một bảng dẫn xuất không có chỉ mục có thể chậm.
Bạn nên cân nhắc việc tạo một bảng tạm thời thực sự với các chỉ mục để kết hợp hoặc tìm ra cách để tránh truy vấn con.
Một JOIN trong MySQL về cơ bản giống như thực hiện tra cứu (tìm kiếm) cho mỗi hàng đã tham gia. Vì vậy, MySQL sẽ phải thực hiện nhiều tra cứu nếu bạn đang kết hợp nhiều bản ghi. Vấn đề là số lượng bảng bạn tham gia ít hơn so với số hàng bạn tham gia có thể là một vấn đề.
Dù sao, MySQL sẽ chỉ thực hiện rất nhiều tìm kiếm trước khi nó từ bỏ và chỉ đọc toàn bộ bảng. Nó thực hiện một công việc khá tốt trong việc quyết định cái nào sẽ ít tốn kém hơn.
Có lẽ điều tốt nhất bạn có thể làm là giúp nó đoán bằng cách cập nhật thống kê chỉ mục với BẢNG PHÂN TÍCH.
Bạn có thể có một mệnh đề WHERE cho mỗi lần CHỌN. Vì vậy, truy vấn con bên trong của bạn sẽ có mệnh đề WHERE và truy vấn bên ngoài của bạn sẽ có mệnh đề WHERE và những điều này được áp dụng sau JOIN (ít nhất là về mặt logic, mặc dù MySQL nói chung sẽ áp dụng chúng trước cho hiệu suất).
Ngoài ra, tất cả những điều này giả sử bạn biết cách sử dụng các chỉ mục đúng cách.