Bài viết bắt đầu bằng việc tạo bảng comments với 1 triệu bản ghi trong PostgreSQL để đánh giá hiệu suất các chiến lược indexing. Tác giả chạy EXPLAIN ANALYZE trên các truy vấn lọc và sắp xếp theo nhiều cột, đo thời gian thực thi của sequential scan là khoảng 17 ms khi không có index. Khi tạo chỉ mục đơn cột trên cột được dùng trong WHERE, thời gian giảm xuống dưới 2 ms; nhưng chỉ mục hợp thành (c1, c2) chỉ hiệu quả khi thứ tự cột trong chỉ mục khớp với thứ tự sử dụng trong predicate và ORDER BY. Đảo ngược thứ tự cột trong chỉ mục hợp thành khiến planner phải thực hiện index scan kết hợp với recheck hoặc fallback về sequential scan, làm tăng thời gian lên 5‑8 ms tùy thuộc vào selectivity. Bài học là: thiết kế chỉ mục hợp thành cần đặt cột có tính chọn lọc cao hoặc được sử dụng trong điều kiện bằng trước, sau đó mới là cột dùng cho range hoặc sắp xếp, và luôn xác thực bằng EXPLAIN ANALYZE trên dữ liệu thực tế.
AI có thể tóm tắt sai. Đọc bài gốc trước khi dựa vào thông tin quan trọng.
Vì sao nên đọc: Bài viết này giúp lập trình viên tối ưu hóa hiệu suất truy vấn SQL bằng cách giải thích cách tạo và sử dụng chỉ mục composite đúng cách.
Trả lời 3 câu hỏi ngắn để nhận điểm thưởng cho bài này. Chỉ làm khi bạn muốn lấy điểm.
3 câu hỏi · dưới một phút · không bắt buộc
Nguồn: https://milanjovanovic.tech/blog/how-to-design-the-right-sql-index. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000 bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thửEvent-driven systems only agree eventually. Here’s how we check they actually got there: deadlines, data ownership, and a reconciliation job that walks the floor.
OccupySaaS is a protest movement in code: laid-off developers building clean-room, open-source, drop-in replacements for the SaaS giants. First up: ZeroAuthy (Auth0) and SalesCompel (Salesforce).
json vs jsonb in PostgreSQL 17 and 18, measured on six document shapes: when jsonb is 23% smaller or 41% larger, read speed, GIN, and what it changes.
This week vector search opened the MySQL Contributor Summit. A plugin started the fire, the M-ecosystem picked it up, the hyperscalers went native, and now the benchmark wars have begun.
An API can save an order and crash before publishing the message that tells other services about it.
Postgres 18’s new file_copy_method = clone setting lets you give every git worktree its own copy of your database in seconds, without eating up your disk.
If you have certain lines of code that repeat over and over again in a project, there's a pretty standard solution for it: using a function. But what about when you have the same project file setup th
Discover optimizer hints in MariaDB Server 13.0: MySQL-compatible syntax, query plan control, and advanced features for views and query blocks.
Đang tải bình luận…