一次扫描算多指标
一次扫描算多指标
SELECT
COUNT(*) AS cnt,
SUM(CASE WHEN order_id IS NULL THEN 1 ELSE 0 END) AS null_pk,
SUM(CASE WHEN amount < 0 THEN 1 ELSE 0 END) AS neg_amount,
COUNT(*) - COUNT(DISTINCT order_id) AS dup_pk
FROM ods_orders
WHERE dt = '2026-10-11';COUNT(DISTINCT) 在大表上开销较高:先做分区裁剪,必要时改为 group by 后的聚合再统计。