[pgsql-jp: 26592] Re: 時間帯を使用したグループ化について

羽生 章洋 habu @ air-beat.com
2002年 7月 5日 (金) 23:39:36 JST


羽生と申します。

> でgroup byで平均値を撮りたいのです。しかし、group by で5分や30
分ごとに
> 平均値を求めるSQLの表記方法が分かりません(そのようなことができる

試しに作成してみました。
ちょっと不細工ですが、こんな感じでいかがでしょうか?

create table aa (dt timestamp,val int4);

select
 to_char(dt,'yyyy/mm/dd hh24:') as grp1,
 to_char(trunc(extract(minute from dt) / 5.1) * 5,'00')||
 '--'||
 to_char(trunc(extract(minute from dt) / 5.1 + 1) * 5,'00') as grp2,
 avg(val) 
from aa
group by grp1,grp2
;

5分単位ですが、30分単位などの場合も数値を変更してやれば
できると思います。

あまり細かくテストしてはいませんので恐縮ですが、参考になれば幸いです。


================================================================
★ワクワク音楽体験サイト それが【エア・ビート・ドットコム】!★
================================================================
有限会社エア・ビート(http://www.air-beat.com/)
取締役兼CEO 羽生 章洋(mailto:habu @ air-beat.com)
================================================================



pgsql-jp メーリングリストの案内