advanced
Tối ưu hóa Truy vấn SQL phức tạp với Execution Plan
Phân tích và tối ưu hóa một câu lệnh SQL chậm có nhiều phép JOIN và truy vấn con lồng nhau.
📝 محتوى الأمر
Đưa ra giải pháp chi tiết để tối ưu hóa một câu truy vấn SQL chậm trong PostgreSQL. Câu truy vấn bao gồm 5 bảng (orders, customers, products, order_items, discounts) với nhiều LEFT JOIN và một subquery trong mệnh đề WHERE. Yêu cầu: 1. Giải thích cách đọc và hiểu 'Execution Plan' để tìm ra nút thắt cổ chai (bottleneck). 2. Đề xuất các chiến lược lập chỉ mục (indexing strategy) cụ thể. 3. Viết lại câu truy vấn sử dụng CTE (Common Table Expressions) hoặc Window Functions để cải thiện hiệu suất nếu cần thiết. 4. So sánh chi phí estimated cost trước và sau khi tối ưu hóa.