Chỉ mục tổ hợp là chỉ mục được tạo trên nhiều cột. Nó còn được gọi là chỉ mục đa cột.
Đặc điểm
- MySQL cho phép tạo chỉ mục tổ hợp gồm tối đa 16 cột.
- Bộ tối ưu hóa truy vấn sử dụng chỉ mục tổ hợp cho các truy vấn kiểm tra tất cả các cột trong chỉ mục.
- Cũng có thể dùng cho các truy vấn kiểm tra cột đầu tiên, hai cột đầu tiên, v.v.
- Nếu các cột được chỉ định theo đúng thứ tự trong định nghĩa chỉ mục, một chỉ mục tổ hợp đơn lẻ có thể tăng tốc các loại truy vấn nhất định trên cùng một bảng.
Tạo chỉ mục tổ hợp
Có thể tạo chỉ mục tổ hợp khi tạo bảng bằng câu lệnh sau:
CREATE TABLE table_name ( c1 data_type PRIMARY KEY, c2 data_type, c3 data_type, c4 data_type, INDEX index_name (c2, c3, c4) );
Trong ví dụ trên, chỉ mục tổ hợp bao gồm ba cột: c2, c3 và c4.
Cũng có thể thêm chỉ mục tổ hợp vào bảng hiện có bằng câu lệnh CREATE INDEX:
CREATE INDEX index_name ON table_name(c2, c3, c4);
Nếu có chỉ mục tổ hợp trên (c1, c2, c3), thì khả năng tìm kiếm được lập chỉ mục sẽ áp dụng cho các tổ hợp cột sau:
(c1) (c1, c2) (c1, c2, c3)