-PR-
解決済み

postgresの関数内で変数からの時間の足し算

  • すぐに回答を!
  • 質問No.9307783
  • 閲覧数127
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 89% (17/19)

postgresの関数内で変数からの時間の足し算の仕方を教えてください。


DECLARE
result timestamp with time zone;
l_minuteinteger := 15;
BEGIN
result := current_timestamp + '15 minute';
RETURN result;
END;


このように
直接「 + '15 minute'」を足す方法は分かるのですが、
例えば、上記のユーザー変数l_minuteを使っての足し算がの仕方が分かりません。
よろしくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル5

ベストアンサー率 100% (2/2)

以下の形で実現できると思います。

result := current_timestamp + '15 minute';

SELECT current_timestamp + CAST( l_minuteinteger || ' minute' AS interval ) INTO result;
お礼コメント
questorfe

お礼率 89% (17/19)

有難うございます。

'15 minute' この部分は文字列ではなくて、intervalという名の時刻計算用の特殊属性なのですね。
やっと意味が分かってきました。

分割してみたらスッキリ理解できました。

l_minute_num integer := 15;
l_minute_itv interval := CAST( l_minute_num || ' minute' AS interval );

result := current_timestamp + l_minute_itv;

値のセットの方法はあんまり関係なさそうです。
投稿日時 - 2017-03-21 16:51:20
関連するQ&A
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ