プロが教えるわが家の防犯対策術!

time
----------------------------
2006-12-01 00:00:00.323861
2006-12-01 00:00:00.710523
2006-12-01 00:00:00.963864
2006-12-01 00:00:01.45068
2006-12-01 00:00:01.512551
2006-12-01 00:00:02.17493
2006-12-01 00:00:02.731608
2006-12-01 00:00:02.873651
2006-12-01 00:00:03.398863
2006-12-01 00:00:03.438085
2006-12-01 00:00:03.833481

このようなレコードが格納されているテーブルに対して、例えば1秒ごとにレコードを集計してその集計時間と集計数を表示する といったことをどのようなSELECT文を作れば良いのでしょうか?

SELECT COUNT (time) FROM table1 where ~
と書いて条件文を一秒ごとに設定した文を何度も繰り返し実行してみたのですが、処理を完了するのにかなり長い時間を要したのでこの方法は断念しました。
短時間でこの処理が行えるような文があったら教えてください。
お願いします。

A 回答 (1件)

文章だけでは、いろいろな受け取り方ができます。


得たい結果例、やってみたことを具体的に示しましょう。
time列のデータ型を示すべきだし、PostgreSQLのバージョンも書いておき
ましょう。

例えば、以下のように表示したいということですか?

時間帯___________________件数
2006-12-01 00:00:00 3
2006-12-01 00:00:01 2
2006-12-01 00:00:02 3
2006-12-01 00:00:03 3

timestamp型を使っているなら、to_char関数、group by句,count関数を組み
合わせるとできるのでは?
    • good
    • 0
この回答へのお礼

できました!
ありがとうございます!

お礼日時:2008/01/29 14:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!