しすてむ さんぽみち。

適当なしすてむ紹介など。ようはくだらないBlog(´▽`)

postgres 生年月日から年代を取得してみる

2008-06-23 15:22:43 | Weblog
年代計算するのってそういえばやったことないかも
とちょろちょろと考えてみた結果が下記のSQLです。

select trunc(date_part('year', age(birth))/ 10)*10 as aetas from table_name;

birth は 生年月日のデータです。型はtimestampのほうがいいと思います。

簡単に処理の流れをメモ
1.age:年齢取得
29 years 9 mons 8 days
↑このような値がかえってきます。

2.date_part:ageの返り値から年齢だけを取得
29
↑このような値が返ってきます。

3.10で割る
2.9
↑まぁこうなります。

4.trunc:切捨て
2
↑こうですね

5.10を掛ける
20

年代とれたー!


10で割って10掛けるって正直どうなのと思うんですが
頭が悪いのだろうなぁ。いい方法がおもいつきませんでした。時間もあまりないので・・。




参考にした記事
http://www.postgresql.jp/document/pg743doc/html/functions-datetime.html
http://chaichan.hp.infoseek.co.jp/qa5500/qa5896.htm

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。