全部SQLで済んでしまえば問題ないのですが、
DBの負荷を除くためにソートをプログラム側で処理したいとか
ないですか?
まぁ、僕はよくそういう風に思ったりしていたので
何度かやっているのですが、いつも忘れてしまうのでメモ
■SQL例
select extract(epoch from timestamp '2009-11-13 15:00:00');
↓
1221631200
参考URL
http://u2k772.blog95.fc2.com/blog-entry-13.html
上記はtimestampでキャストした「2009-11-13 15:00:00」のデータを返しています。
実際に利用される場合は
select extract(epoch from '変換したいtimesatamp型のカラム名') from 'テーブル名';
となります。
-----
extract関数について少し書いてみます。
先のtimestamp以外にも下記のような例もイケるようです。
・曜日を取得してみる。
何曜日だっけ?というのが取得できます。カレンダーとか作るのに役立つかも。
select extract(dow from timestamp '2001-02-16 20:38:40');
Result: 5
曜日(0~6、日曜日が 0、timestamp の値のみで使用可)
■年間日数を取得してみる。
365日の何日目だっけ?というのが取得できます。
select extract(doy from timestamp '2001-02-16 20:38:40');
Result: 47
他にもいろいろあるので、参考サイトのURLをみてみてください。
参考URL
http://www.postgresql.jp/document/pg721doc/user/functions-datetime.html
DBの負荷を除くためにソートをプログラム側で処理したいとか
ないですか?
まぁ、僕はよくそういう風に思ったりしていたので
何度かやっているのですが、いつも忘れてしまうのでメモ
■SQL例
select extract(epoch from timestamp '2009-11-13 15:00:00');
↓
1221631200
参考URL
http://u2k772.blog95.fc2.com/blog-entry-13.html
上記はtimestampでキャストした「2009-11-13 15:00:00」のデータを返しています。
実際に利用される場合は
select extract(epoch from '変換したいtimesatamp型のカラム名') from 'テーブル名';
となります。
-----
extract関数について少し書いてみます。
extract 関数は日付/時刻の値から年とか時刻などの部分フィールドを抽出します。
先のtimestamp以外にも下記のような例もイケるようです。
・曜日を取得してみる。
何曜日だっけ?というのが取得できます。カレンダーとか作るのに役立つかも。
select extract(dow from timestamp '2001-02-16 20:38:40');
Result: 5
曜日(0~6、日曜日が 0、timestamp の値のみで使用可)
■年間日数を取得してみる。
365日の何日目だっけ?というのが取得できます。
select extract(doy from timestamp '2001-02-16 20:38:40');
Result: 47
他にもいろいろあるので、参考サイトのURLをみてみてください。
参考URL
http://www.postgresql.jp/document/pg721doc/user/functions-datetime.html