Best practices for SQL database interaction and design. Sử dụng khi cần viết query, tối ưu performance, thiết kế schema, hoặc xử lý transaction. Bao gồm query optimization, indexing, CTEs, window functions, ACID, và security.
Seq Scan (quét toàn bộ bảng) -> Nếu thấy, cần thêm Index.WHERE, JOIN, ORDER BY.LIMIT số lượng bản ghi trả về khi query danh sách/search.JOIN hoặc Eager Loading (trong ORM) thay vì query loop.WHERE YEAR(date_col) = 2023 (Không dùng index được).WHERE date_col >= '2023-01-01' AND date_col < '2024-01-01'.WITH cte_name AS (...) để làm rõ logic, thay thế subquery lồng nhau khó đọc.ROW_NUMBER(), RANK(), LEAD(), LAG() cho các bài toán thống kê/phân trang phức tạp.BEGIN ... COMMIT/ROLLBACK cho các cụm thao tác (vd: Chuyển tiền = Trừ A + Cộng B).Read Committed (default thường gặp) vs Serializable. Cẩn thận Dirty Read, Phantom Read.INT vs BIGINT, VARCHAR vs TEXT, TIMESTAMP vs DATETIME).