関数の返り値をGROUP BY句に指定する
公開日:
:
最終更新日:2014/01/28
SQL
記事内に広告を含む場合があります。記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
GROUP BYなし
SELECT s_time
FROM sales
ORDER BY s_time;
s_time
---------------------
2004-11-27 20:15:30
2004-12-01 12:18:14
2004-12-04 16:34:44
2004-12-10 08:16:12
2005-01-05 13:25:09
2005-01-07 18:25:57
2005-01-07 19:45:35
2005-01-24 21:02:54
2005-02-01 23:12:23
2005-02-10 18:22:51
(10 rows)
GROUP BY DATE_TRUNC(‘year’, s_time)
SELECT DATE_TRUNC('year', s_time)
FROM sales
GROUP BY DATE_TRUNC('year', s_time)
ORDER BY DATE_TRUNC('year', s_time)
date_trunc
---------------------
2004-01-01 00:00:00
2005-01-01 00:00:00
(2 rows)
GROUP BY DATE_TRUNC(‘month’, s_time)
SELECT DATE_TRUNC('month', s_time)
FROM sales
GROUP BY DATE_TRUNC('month', s_time)
ORDER BY DATE_TRUNC('month', s_time)
date_trunc
---------------------
2004-11-01 00:00:00
2004-12-01 00:00:00
2005-01-01 00:00:00
2005-02-01 00:00:00
(4 rows)