提问 · 2026 年 3 月 1 日 · 10 分钟
粒度:你到底在问一行、一单,还是一个人
表的一行是什么,决定你能不能 SUM、能不能 COUNT DISTINCT。订单表一行是一单,明细表一行是一个 SKU。把人、单、行三个字混用,是问数里最常见的静默错误。
先问一行是什么
抽样五看。有重复 order_id,就不是订单粒度。有重复 user_id,就不是用户粒度。
聚合要匹配问题
问人数却 SUM 金额,问金额却 COUNT 明细行,都会得到「看起来像那么回事」的错数。
转化率的分母是粒度题
下单人数除以下单件数,不是转化。先写清分子分母各是哪种一行。
一次完整的问法可以先写成下面这样:
昨天支付成功的订单有多少单、多少人、多少件?三个数分开给。
落到语句上,草稿常常是:
SELECT
COUNT(DISTINCT o.order_id) AS order_cnt,
COUNT(DISTINCT o.user_id) AS user_cnt,
SUM(i.sku_qty) AS item_qty
FROM orders o
JOIN order_items i ON i.order_id = o.order_id
WHERE o.pay_time >= CURRENT_DATE - INTERVAL '1 day'
AND o.pay_time < CURRENT_DATE
AND o.pay_status = 'paid';
三个数并排写,粒度就无法偷换。只给一个「销量」,争论会从数字转到定义。
提问是规格,不是文采
公开的提问建议把好问题拆成时间、指标、筛选、统计、呈现。我把它当成规格书。规格可以写得不好看,不可以缺零件。零件缺了还硬跑,就是用默认值替别人做决定。
相对时间必须有锚点。形容词必须换成规则。追问必须能单独重跑。这三条足够挡住提问阶段最常见的漂。
高频问题做成卡片。卡片有版本。口径改了就升版本,不要在聊天里口头补丁。口头补丁过一周,谁也说不清当时的数是哪一版口径问出来的。
读完这一辑可以做什么
把你最常问的三句话写成卡片。每张卡片第一行写锚点规则,第二行写指标计算,第三行写排除项。然后拿这三张卡片去对三天的报表。对不上,先改卡片,不改心理预期。
人、单、行三个字,问数里不能互相替代。