tôi cần phải truy vấn dữ liệu từ một bảng thứ hai, nhưng chỉ khi nào một tập hiếm hoi của điều kiện trong bảng chính được đáp ứng:MySQL Short Circuit có phải là hàm IF() không?
SELECT ..., IF(a AND b AND c AND (SELECT 1 FROM tableb ...)) FROM tablea ...
a, b, và điều kiện c là hầu như luôn luôn sai lầm, vì vậy suy nghĩ của tôi là truy vấn phụ sẽ không bao giờ thực hiện cho hầu hết các hàng trong tập kết quả và do đó sẽ nhanh hơn so với kết nối. Nhưng điều đó sẽ chỉ đúng nếu câu lệnh IF() ngắn mạch.
Có phải không?
Cảm ơn sự giúp đỡ nào mà các bạn có thể cung cấp.