Web でフォームを送信すると、挿入クエリは関数 now() を使用して現在の日付を DB に保存します。
今、私が必要とする他の考えを計算するために、この列を分形式で取得しようとしていますが、その方法がわかりません。
たとえば、私はこれを持っています:
"2013-05-08 08:30:00"
そして、私はこれが欲しいです(現在8.50):
"20" <-分単位
ありがとう
Web でフォームを送信すると、挿入クエリは関数 now() を使用して現在の日付を DB に保存します。
今、私が必要とする他の考えを計算するために、この列を分形式で取得しようとしていますが、その方法がわかりません。
たとえば、私はこれを持っています:
"2013-05-08 08:30:00"
そして、私はこれが欲しいです(現在8.50):
"20" <-分単位
ありがとう
OK、タイムスタンプを持つテーブルがあるとしましょう:
CREATE TABLE ex (t timestamp);
INSERT INTO ex VALUES ('2013-05-08 8:30'::timestamp);
t
そして、列との差を分単位で求めますnow()
。extract
次の関数を使用して取得できます。
SELECT extract(epoch from (now() - ex.t)) / 60 FROM ex;
epoch
タイプの「エポック」からの秒数ですがdate
、タイプtimestamp
の間隔の秒数だけではありませんinterval
。それを 60 で割ると、必要な値が得られます (整数の分数が必要な場合は、trunc
それだけです)。