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

Tại sao bạn không nên sử dụng DISTINCT khi bạn có thể sử dụng GROUP BY?

Nếu bạn biết rằng hai cột từ kết quả của bạn luôn có liên quan trực tiếp thì việc này sẽ chậm hơn:

SELECT DISTINCT CustomerId, CustomerName FROM (...)

hơn thế này:

SELECT CustomerId, CustomerName FROM (...) GROUP BY CustomerId

bởi vì trong trường hợp thứ hai, nó chỉ phải so sánh id, nhưng trong trường hợp đầu tiên, nó phải so sánh cả hai trường. Đây là một thủ thuật dành riêng cho MySQL. Nó sẽ không hoạt động với các cơ sở dữ liệu khác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các trường Jooq LocalDateTime sử dụng múi giờ hệ thống thay vì múi giờ phiên

  2. ORDER BY RAND () thay thế

  3. Số hàng mỗi nhóm trong mysql

  4. Làm cách nào để triển khai khóa bi quan trong ứng dụng web php / mysql?

  5. Tại sao phải sử dụng các khuôn khổ? Thuyết phục tôi rằng tôi nên tìm ra Zend Framework và sử dụng nó