ShopifyQL 按天与按周汇总总额对不上怎么办
现象#
同一区间按天查询 total_sales 相加是 48,200,换成 TIMESERIES week 只有 46,900,首尾两周各少几天。
原因#
- TIMESERIES 分桶按查询时区与周起点计算,边界订单会落到相邻桶
- 按周查询会把区间首尾的不完整周各算一个桶,与按天求和的边界不一致
- 小时粒度对无数据时段返回空值,客户端跳过或当成 0 会让合计偏差
- 当天数据仍在写入,两次查询的截止时刻不同,尾部会少一截
处理步骤#
- 统一用
SINCE startOfDay(-7d) UNTIL today,避免相对时间漂移 - 需要总计就加
WITH TOTALS,不要手写各行相加 - 对比粒度前先固定
UNTIL到同一时刻,再改 TIMESERIES - 小时粒度结果按时间轴补零,再与天粒度逐桶对齐后比较
- 把周起点规则写进查询说明,跨周报表固定使用同一规则
验收标准#
同一区间按天与按周查询的 TOTALS 完全相等,边界订单能在小时粒度中定位到具体时段。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。