[pgsql-jp: 29980] Re: 24:00を超えた場合の時刻表示方法について
Takao Kato
sirius @ jp.fujitsu.com
2003年 5月 19日 (月) 14:56:08 JST
加藤@川崎です。
> PHPのML([PHP-users 15364])での意見ですが、僕も「魚を
> 与えるよりも、釣りの仕方を教える」方針でいきます。
うっ、答え書いて出しかけてしまいました ^^;
# もったいないけれど出さないでおきます。
> 以下の方法を提案します
> 1) PostgreSQLリファレンスより、SELECT文の書き方や、PostgreSQL提供の
> SQL関数を確認する。
それだけだと難しいかもしれないので、ヒント(ポインター)をいくつか。
ヒント1:case when 〜 else 〜 end
ヒント2:to_char
ヒント3:int または text型へのキャスト
ヒント4:文字列連結関数(?)
それと、日付を比較するのに
>if( to_char( work_date , 'YYYY/MM/DD') != to_char( in_time , 'YYYY/MM/DD')
>) -- 「24+2」する…
>else -- そのまま…
とされていますが、例えばヒント3の「キャスト」を利用して、
if(in_time::date != out_time::date) -- 「24+2」の処理
else -- そのまま
とやったりできますよね。今回はtimestampをdateにキャストしていますが、、、、
ちょっと考えるとパズルが解けたように答えが閃くかと。
-------------
加藤@川崎
pgsql-jp メーリングリストの案内