小計、總計 GROUP 運算子
ROLLUP 是一個特別語法,可以讓我們根據條件進行分組小計和總計的計算。
SELECT name, category, SUM(price) FROM products GROUP BY category, name WITH ROLLUP;
日營收分析
使用 DATE 函式可以將時間轉為日期,再透過 GROUP BY DATE(created_at) 將訂單進行以日期進行分組,以取得日營收分析。
SELECT
DATE(created_at),
COUNT(*),
SUM(amount),
AVG(amount)
FROM orders
GROUP BY DATE(created_at)
ORDER BY DATE(created_at);
月營收平均
使用 DATE 函式可以將時間轉為日期,EXTRACT 可以抽取出年或月,再透過 EXTRACT(MONTH FROM DATE(created_at)) 將訂單進行以月進行分組,以取得月營收分析。
SELECT
EXTRACT(YEAR_MONTH FROM DATE(created_at)),
COUNT(*),
SUM(amount),
AVG(amount)
FROM orders
GROUP BY EXTRACT(MONTH FROM DATE(created_at))
ORDER BY DATE(created_at);
年營收平均
使用 DATE 函式可以將時間轉為日期,EXTRACT 可以抽取出年或月,再透過 EXTRACT(YEAR FROM DATE(created_at)) 將訂單進行以年進行分組,以取得年營收分析
SELECT
EXTRACT(YEAR FROM DATE(created_at)),
COUNT(*),
SUM(amount),
AVG(amount)
FROM orders
GROUP BY EXTRACT(YEAR FROM DATE(created_at))
ORDER BY DATE(created_at);