Tôi đang cố gắng chọn danh sách riêng biệt trong đó các bản sao được tạo trên nhiều trường. Ví dụ:Trong SQL, việc sử dụng DISTINCT ảnh hưởng như thế nào đến hiệu suất?
SELECT tablename.field1Date,
tablename.field2Number,
tablename.field3Text
FROM tablename;
Sẽ chọn bản ghi trùng lặp theo ngày, số và trường văn bản tương ứng.
Bây giờ, khi tôi chọn các bản ghi riêng biệt để cung cấp những gì tôi đang tìm kiếm, hiệu suất dường như giảm đáng kể.
SELECT DISTINCT tablename.field1Date,
tablename.field2Number,
tablename.field3Text
FROM tablename;
Có lý do nào cho điều này không? Tôi phải thừa nhận tôi đang sử dụng MS Access 2003 có thể là vấn đề.
Bạn có nghĩ rằng có sự khác biệt về hiệu suất giữa chỉ mục tổng hợp trên cả ba trường và chỉ mục riêng lẻ trên mỗi trường? –
Tôi hy vọng rằng sẽ có một số cải tiến. Nếu không, chỉ sử dụng chỉ mục của một hợp chất để đảm bảo tính duy nhất, thay vì giúp tìm kiếm các n-tuple. – BIBD