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

Câu lệnh SELECT không sử dụng can_key

Có điều gì đó cho tôi biết Trình tối ưu hóa truy vấn MySQL đã quyết định chính xác.

Đây là cách bạn có thể nói. Chạy những điều này:

Số lượng hàng

SELECT COUNT(1) FROM issued_parts;

Số lượng hàng phù hợp với truy vấn của bạn

SELECT COUNT(1) FROM issued_parts WHERE date_issued > '20100101';

Nếu số hàng bạn thực sự đang truy xuất vượt quá 5% tổng số của bảng, thì Trình tối ưu hóa truy vấn MySQL quyết định sẽ ít nỗ lực hơn khi quét toàn bộ bảng.

Bây giờ, nếu truy vấn của bạn chính xác hơn, chẳng hạn, với điều này:

SELECT * FROM issued_parts WHERE date_issued = '20100101';

sau đó, bạn sẽ nhận được một kế hoạch GIẢI THÍCH hoàn toàn 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. Loại bỏ các hàng trùng lặp Chỉ để lại hàng cũ nhất?

  2. Xóa bản ghi từ hơn 1 năm trước

  3. Sử dụng IN với truy vấn con không sử dụng chỉ mục

  4. Tại sao câu lệnh SQL INSERT này trả về lỗi cú pháp?

  5. Sự cố khi lưu trữ các giá trị Vĩ độ và Kinh độ trong cơ sở dữ liệu MySQL