Quay lại thư viện câu hỏi
MySQL Senior

Tại sao việc sử dụng hàm hoặc biểu thức trên cột trong mệnh đề WHERE lại làm vô hiệu hóa Composite Index và cách khắc phục?

MySQL không thể sử dụng index nếu cột bị bao bọc trong hàm (ví dụ: WHERE YEAR(created_at) = 2023) vì giá trị index được lưu trữ theo giá trị gốc của cột, không phải kết quả của hàm. Khắc phục: Thay đổi câu lệnh thành so sánh khoảng (range scan) như WHERE created_at >= '2023-01-01' AND created_at <= '2023-12-31'. Điều này cho phép MySQL sử dụng index trên cột created_at một cách hiệu quả.

Luyện tập câu hỏi này trong chế độ đếm ngược mô phỏng phỏng vấn thật:
Phòng Luyện Tập
Khóa học Chuyên sâu Chủ đề MySQL

Khóa học Tối Ưu Database MySQL Enterprise

Hệ thống khóa học thực chiến chuẩn Enterprise giúp bạn tự tin chinh phục mọi kỳ phỏng vấn kỹ thuật và thăng tiến thu nhập.

Tải Tuyển Tập 100+ Câu Hỏi Phỏng Vấn Chuyên Sâu (PDF)

Bộ tài liệu chuẩn Senior do Unicode Academy tuyển chọn & biên soạn, hỗ trợ tải về định dạng PDF chuẩn in ấn.

High-Ticket Mentoring
Cần Mentor Phỏng Vấn Thử 1-1 & Tối Ưu CV?

Mô phỏng phỏng vấn kỹ thuật thực tế 1-1 qua Google Meet, nhận xét chi tiết điểm mạnh/yếu và sửa CV trực tiếp cùng giảng viên Unicode.

AI Resume Scanner
Kiểm Tra CV Chuẩn ATS Miễn Phí

Tải CV của bạn lên để hệ thống AI rà soát từ khóa kỹ năng, định dạng và tính điểm chuẩn nhà tuyển dụng.

vừa nâng cấp PRO khóa 1 phút trước   Tìm hiểu khóa học