テック

BigQuery | 日別の売上を集計する

使い方

日別に売上を集計しレポートを作成するSQLを紹介します。

ordersテーブル

order_idorder_dateuser_idamount
12021-04-0186414900
22021-04-0129919100
32021-04-019339800
42021-04-013836500
52021-04-012264300
62021-04-0185117300
72021-04-0168222400
82021-04-012211800
92021-04-0189915200
102021-04-0115117500
112021-04-027181400
122021-04-0224126900

クエリ

-- 日別の売り上げを集計する
SELECT
  order_date,
  SUM(amount) total_amount,
  ROUND(AVG(amount), 1) avg_amount,
  COUNT(order_date) purchase_cnt,
FROM
  `dataset.orders`
GROUP BY 
  order_date
ORDER BY 
  order_date

結果

order_datetotal_amountavg_amountpurchase_cnt
2021-04-0112880012,880.010
2021-04-0215780017,533.39
2021-04-0310910015,585.77
2021-04-0420310018,463.611
2021-04-0523410014,631.316
2021-04-0625350014,911.817
2021-04-0723360016,685.714
2021-04-086220012,440.05
2021-04-0915440011,876.913
2021-04-1014650016,277.89
2021-04-1111190013,987.58

解説

以下の手順で取得しています。

  1. GROUP BY order_date で日ごとに集計
  2. 日ごとの売上合計 を SUM(amount) で集計
  3. 日ごとの平均購入額 を AVG(amount) で集計
  4. 小数第2位以下を ROUND(平均購入額, 1) で 四捨五入

関連リンク

より実務的なクエリを身につけるには「ビッグデータ分析・活用のためのSQLレシピ」がおすすめです。

ビッグデータ分析
この記事に関連する記事