示例
示例
CREATE INDEX idx_orders_user_created
ON orders (user_id, created_at)
INCLUDE (total);
EXPLAIN (ANALYZE)
SELECT user_id, created_at, total
FROM orders
WHERE user_id = 100
ORDER BY created_at DESC
LIMIT 10;
-- 计划可能显示:Index Only Scan using idx_orders_user_created| 版本 | PostgreSQL 11 起支持 INCLUDE |
|---|---|
| 与键列区别 | INCLUDE 列不能用于条件定位与排序,只随行附带存储 |
| 收益 | 避免回表;比把列放进键里更省索引维护成本 |