Vì bạn vẫn cần đọc tất cả dữ liệu từ cả chỉ mục + tệp dữ liệu. Vì bạn không sử dụng bất kỳ where
nào điều kiện - bạn sẽ luôn có kế hoạch truy vấn, truy cập tất cả dữ liệu, từng hàng một và bạn không thể làm gì với điều này.
Nếu hiệu suất là quan trọng đối với truy vấn này và nó được thực hiện thường xuyên - tôi khuyên bạn nên lưu kết quả vào bộ nhớ cache vào một số bảng tạm thời và cập nhật nó hàng giờ (hàng ngày, v.v.).
Tại sao nó trở nên chậm hơn:bởi vì trong dữ liệu chỉ mục đã được sắp xếp và khi mysql tính toán chi phí thực hiện truy vấn, nó nghĩ rằng sẽ tốt hơn nếu sử dụng dữ liệu đã được sắp xếp, sau đó nhóm nó, sau đó tính toán tổng thể. Nhưng nó không phải trong trường hợp này.