搜尋

首頁  >  問答  >  主體

查詢計算每季的平均值

我是 MySQL 新手,需要你的幫助來找出一個查詢,以便我可以計算每個季度的平均值。 我有一個名為 USretail92_21 的表,如下所示(從 1992 年到 2021 年):

日期 銷售
1992-01-01 701.0
1992-02-01 658.0
1992-03-01 731.0
1992-04-01 816.0
1992-05-01 856.0
1992-06-01 853.0
1992-07-01 101.0
1992-08-01 558.0
1992-09-01 431.0

考慮日期格式 1992-01-01 表示 1992 年 1 月。現在我運行以下查詢來獲取季度和月份:

選擇年份(日期)為年份,月份名稱(日期)為月份,季度(日期)為季度,銷售額來自 USretail92_21,其中 kind="男裝店" order by 1 這給了我這樣的觀點:

季度 銷售
1992 一月 1 701.0
1992 二月 1 658.0
1992 三月 1 731.0
1992 四月 2 816.0
1992 五月 2 856.0
1992 六月 2 853.0

現在我向您提出的問題是如何獲得每季的平均銷售額並獲得如下所示的產出:

季度 平均銷售
1 1992 696(一月/二月/三月平均)
2 1992 841

最終,我想用 Python 繪製一個圖表,將銷售額視為 Y 軸,將「Q1_92 到 Q4_21」視為 X 軸

P粉521697419P粉521697419305 天前413

全部回覆(1)我來回復

  • P粉788765679

    P粉7887656792024-01-30 09:01:32

    您需要使用 GROUP BY 來計算總和和平均值等聚合。

    根據您的範例進行工作:

    WITH SalesPerMonth AS (
      select year(date) as Year,
      monthname(date)as Month, 
      quarter(date) as Quarter, 
      sales from USretail92_21 
      where kind="Men's clothing stores" 
    )
    SELECT Quarter, Year, AVG(Sales) AS AverageSales
    FROM SalesPerMonth 
    GROUP BY Quarter, Year

    或一次完成所有操作:

    select year(date) as Year,
           quarter(date) as Quarter, 
           AVG(sales) AverageSales
    from USretail92_21 
    where kind="Men's clothing stores"
    group by year(date),
             quarter(date)

    回覆
    0
  • 取消回覆