栃木,Web,WordPress,スマートフォン,野球,ラグビーなど
Oracle日付別カウント数集計
※2011/10/5 追記:Mototakerさんのご指摘により、一部修正を行いました。
Oracle(10g)での日付別集計の取得クエリに関するメモ。
前提:マツダスタジアムは、入場時に日付(date型)を時:分:秒までOracleに保存している。
欲しいデータ:2011年6月の入場者数を日別に抽出したい。
※テーブル名:zoom_zoom
※入場日付カラム名:enter_dt
SELECT
enter_dt as 入場日付,
count(enter_dt) as 入場者数
FROM
zoom_zoom
WHERE
enter_dt between to_date(‘2011/06/01′,’yyyy/mm/dd’) AND
to_date(‘2011/06/30′,’yyyy/mm/dd’)
GROUP BY
enter_dt
ORDER BY
enter_dt asc;
とすると、時:分:秒ごとにグルーピングされてしまい、日別にならない(T△T)
入場日付 |入場者数
—————————-+————-
2011/06/01 10:56:24 | 1
2011/06/01 11:12:12 | 1
2011/06/01 11:23:38 | 1
2011/06/01 11:38:32 | 1
・
・
・
なので、to_date関数を使ってenter_dtを日付変換することで、日別のカウントを取得。
SELECT
trunc(enter_dt) as 入場日付,
count(trunc(enter_dt)) as 入場者数
FROM
zoom_zoom
WHERE
enter_dt between to_date(‘2011/06/01 00:00:00′,’yyyy/mm/dd hh24:mi:ss’) AND
to_date(‘2011/06/30 23:59:59′,’yyyy/mm/dd hh24:mi:ss’)
GROUP BY
trunc(enter_dt)
ORDER BY
trunc(enter_dt) asc;
こうすると、日別の入場者数が取得可能にo(*^▽^*)o
入場日付 |入場者数
——————-+————-
2011/06/01 | 30,498
2011/06/02 | 32,129
2011/06/03 | 31,949
2011/06/04 | 32,134
・
・
・
がんばれ広島カープ!
マツダスタジアム行きたい!!
印刷 | この記事は ohsexybaby によって 2011/07/22 8:21 AM に投稿されました, Oracle, Web 以下に保存されています。 RSS 2.0 を通してコメントをフォローする。 コメントを残すか、ご自分のサイトからトラックバックできます。 |