Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm thế nào để thay thế toán tử OR bằng toán tử UNION?

Điều đầu tiên tôi sẽ thử là một truy vấn con:

from ((select q.* from quanda q where q.id = :id1) union
      (select q.* from quanda q where q.related = :id2)
     ) left join
     . . .

Lưu ý:Điều này thực sự muốn lập chỉ mục trên quanda(id)quanda(related) cho hiệu suất.

Nếu ít hàng được chọn, thì quá trình này có thể nhanh hơn nhiều.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Truy vấn SQL với trung bình và nhóm theo

  2. Lưu trữ JSON trong cơ sở dữ liệu so với việc có một cột mới cho mỗi khóa

  3. lỗi thay đổi bảng, thêm ràng buộc khóa ngoại gặp lỗi Không thể thêm hoặc cập nhật hàng con

  4. truy vấn unbuffered với MySQLi?

  5. Kết nối đăng ký Facebook