- ベストアンサー
日付の変換方法について
OSはunix(Solaris8)で、c言語を使ってます。 DBからDATE型の日付データ(YYYYMMDDhhmmss)を取得してきて、 30分後の時間を計算して元のDATE型に戻して格納する処理を行いたい のですが、一度数値に変換した方がよいのでしょうか? それとも、もっと効率の良い方法がありましたら教えて下さい。 宜しく御願い致します。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちわ。 DB がOracle と言う事であれば、以下のSQL 文で30分後の時間に 設定する事ができます。 Update 表名 set Date型列名 = Date型列名 + 30/1440 Where ・・・; ※ Oracle ではDate 型変数は内部的には7バイトの数値型で、 整数部で基準日からの日数を、小数部で当日からの経過時間を 管理していますので、SQL文で上記のように記述できます。 SQL*Plus 等では、デフォルトで時間情報が表示されないように マスクされていますので、時間情報も併せて表示する場合には、 事前に以下のSQL 文を実行して下さい。 Alter session set nls_date_format = 'YYYY/MM/DD HH24:MI:SS';