Partitioning · perf.orders_by_year
Partition pruning: chỉ quét phân vùng khớp điều kiện
Partition pruning trên bảng orders_by_year
Truy vấn lọc order_date trong năm 2024 đi qua bảng cha orders_by_year chia RANGE theo năm; chỉ phân vùng orders_2024 được quét, các phân vùng 2023, 2025, 2026 và default bị bỏ qua.
TRUY VẤN
BẢNG CHA
PHÂN VÙNG · RANGE THEO NĂM
QUÉT
SELECT
Đơn hàng năm 2024
WHERE order_date >= '2024-01-01'
AND order_date < '2025-01-01'
BẢNG
orders_by_year
PARTITION BY RANGE
(order_date)
không chứa dòng nào,
chỉ định tuyến
orders_2023
[2023-01-01, 2024-01-01) · 264.867 dòng
BỎ QUA
orders_2024
[2024-01-01, 2025-01-01) · 264.671 dòng
SEQ SCAN
orders_2025
[2025-01-01, 2026-01-01) · 264.498 dòng
BỎ QUA
orders_2026
[2026-01-01, 2027-01-01) · 205.964 dòng
BỎ QUA
orders_default
DEFAULT · dòng ngoài mọi khoảng
BỎ QUA
[ FROM bao gồm, TO không bao gồm )
nên các năm nối liền, không chồng lấn.
Viết EXTRACT(YEAR FROM order_date) = 2024
thì cả 5 phân vùng đều bị quét.
CHÚ GIẢI
Phân vùng được đọc
Bị cắt tỉa khi lập kế hoạch, không đọc trang nào
© tiennhm