You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助验证各门店2020-2021年销售额对比SQL查询及趋势图制作

门店2020-2021年销售额查询的SQL优化与验证

你的需求是获取各门店2020、2021年的销售额对比数据并制作趋势图表,先帮你分析原SQL的问题,再给出优化方案:

原SQL存在的问题

  • distinct关键字完全多余:group by store_name, extract(year from date)已经会按门店+年份分组,每组仅返回一行汇总数据,加distinct不会改变结果,反而可能增加不必要的计算开销。
  • 拆分两个CTE再union all的写法可以简化,没必要分开处理两年的数据。

优化后的SQL

SELECT
  store_name AS store,
  EXTRACT(YEAR FROM date) AS year,
  CAST(SUM(sale_dollars) AS INT64) AS total_sales
FROM (
  SELECT store_name, date, sale_dollars
  FROM `bigquery-public-data.iowa_liquor_sales_forecasting.2020_sales_train`
  UNION ALL
  SELECT store_name, date, sale_dollars
  FROM `bigquery-public-data.iowa_liquor_sales_forecasting.2021_sales_predict`
)
GROUP BY store, year
ORDER BY store, year;

补充说明

  1. 新增ORDER BY子句:按门店和年份排序,结果更规整,方便后续做图表时直接使用。
  2. 可选年份过滤:如果担心表中混入其他年份的数据,可以在子查询里加WHERE EXTRACT(YEAR FROM date) IN (2020, 2021),确保只取目标年份的数据。
  3. 结果验证:可以取几个门店单独核对,比如查询某门店2020年的明细销售额总和,和汇总结果对比,确认计算正确。

趋势图表制作建议

拿到查询结果后,你可以:

  • 导出数据到Excel,用柱状图对比同门店两年的销售额,或用折线图展示各门店连续两年的销售趋势;
  • 直接在BigQuery中连接Looker Studio(原Data Studio),拖拽字段生成可视化图表,更高效。

内容的提问来源于stack exchange,提问作者lilpearce

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 06:05:21