Index · Seq Scan và Index Scan

Không có index thì đọc cả bảng, có index thì đi thẳng tới dòng cần

Sequential Scan so với tìm qua B-tree index Không có index, PostgreSQL đọc cả 1.000.000 dòng của perf.orders để kiểm tra customer_id; có index idx_orders_customer_id, PostgreSQL đi từ gốc B-tree xuống nhánh chứa khóa 4242, tới lá đã sắp xếp rồi chỉ đọc 9 dòng khớp. SELECT * FROM perf.orders WHERE customer_id = 4242; KHÔNG CÓ INDEX Sequential Scan ĐỌC MỌI DÒNG perf.orders kiểm tra customer_id ở 1.000.000 dòng CÓ INDEX · idx_orders_customer_id Đi theo B-tree index ĐỌC DÒNG KHỚP Gốc idx_orders_customer_id Nhánh khác không chứa 4242 bỏ qua cả nhánh Nhánh chứa 4242 khoảng khóa có 4242 Lá: khóa đã sắp xếp 4242 → 9 vị trí dòng Bảng perf.orders chỉ đọc 9 dòng khớp © tiennhm