perf(template): 补模板证据日期/覆盖索引,预览降到秒级

This commit is contained in:
yml2213
2026-10-26 16:43:56 +08:00
parent 7743d2019c
commit c8b7e80979
@@ -0,0 +1,17 @@
-- 114_template_evidence_indexes.sql
-- 接单模板初始化预览:按订单日期筛 30 天,再按订单项取 SKU 证据。
-- 测试库 40 万订单项时缺索引会到 40 秒;两个索引把预览降到秒级。
CREATE INDEX IF NOT EXISTS idx_orders_basis_date
ON orders (((COALESCE(paid_at, created_at) AT TIME ZONE 'Asia/Shanghai')::date));
CREATE INDEX IF NOT EXISTS idx_order_items_order_sku_cover
ON order_items (order_id) INCLUDE (id, sku_code, sku_name);
COMMENT ON INDEX idx_orders_basis_date IS
'模板初始化/时间筛选:按 Asia/Shanghai 订单日期过滤,避免全表扫 orders';
COMMENT ON INDEX idx_order_items_order_sku_cover IS
'模板初始化的 SKU 证据覆盖索引,避免回表取 sku_code/sku_name';
ANALYZE orders;
ANALYZE order_items;