Tôi có một truy vấn SQL rất đơn giản:
SELECT COUNT(DISTINCT x) FROM table;
Bàn của tôi có khoảng 1,5 triệu hàng. Truy vấn này đang chạy khá chậm; phải mất khoảng 7,5 giây, so với
SELECT COUNT(x) FROM table;
Mất khoảng 435ms. Có cách nào để thay đổi truy vấn của tôi để cải thiện hiệu suất không? Tôi đã thử nhóm và thực hiện đếm thường xuyên, cũng như đặt chỉ mục trên x; cả hai đều có thời gian thực hiện 7.5s giống nhau.
\d
đầu ra psql
là tốt) và chính xác cột mà bạn gặp vấn đề. Sẽ tốt khi thấy EXPLAIN ANALYZE
cả hai truy vấn.