Lập trình 28/10/2026 7 phút

Composite index đo thật: index (cust, created) tra thẳng cột đầu chỉ 1 lần seek (0,018 ms), nhưng lọc theo cột thứ hai một mình phải skip scan 20.001 lần seek (10 ms); thêm đúng cột vào index cho Using index, khớp thứ tự cho tránh filesort

Phần 9 sê-ri MySQL và InnoDB: index composite nhiều cột và covering index. Đo thật trong mysql:8 trên index (cust, created): tra theo cột đầu (leftmost prefix) chỉ 1 lần seek và 0,018 ms, nhưng lọc theo cột thứ hai created một mình không seek thẳng được — MySQL phải index skip scan qua mọi tiền tố cust, tốn 20.001 lần seek và 10 ms để tìm 10 dòng. Chọn SELECT đúng cột có trong index cho Using index (phủ, không tra ngược clustered). Và ORDER BY khớp thứ tự cột index thì Using index không filesort, lệch thứ tự thì Using filesort. Thứ tự cột trong index quyết định nó phục vụ được truy vấn nào.