advanced
Tối ưu hóa truy vấn SQL cho cơ sở dữ liệu lớn
Phân tích kế hoạch thực thi và đề xuất viết lại câu lệnh SQL phức tạp.
📝 Nội dung Prompt
Giả sử bạn có một cơ sở dữ liệu PostgreSQL với hàng tỷ bản ghi trong bảng 'transactions' và 'users'. Bạn cần viết một câu truy vấn SQL phức tạp để tìm ra top 100 người dùng có tổng giao dịch cao nhất trong mỗi quý, nhưng chỉ bao gồm những người dùng đã hoạt động liên tục trong 12 tháng qua. Sau khi viết câu truy vấn ban đầu sử dụng các hàm cửa sổ (Window Functions) và CTEs (Common Table Expressions), hãy phân tích tiềm ẩn vấn đề hiệu năng (như N+1 problem hay full table scans) và đề xuất cách viết lại câu truy vấn hoặc tạo chỉ mục (index) để tối ưu hóa thời gian thực thi xuống dưới 100ms.