7

Web でフォームを送信すると、挿入クエリは関数 now() を使用して現在の日付を DB に保存します。

今、私が必要とする他の考えを計算するために、この列を分形式で取得しようとしていますが、その方法がわかりません。

たとえば、私はこれを持っています:

"2013-05-08 08:30:00"

そして、私はこれが欲しいです(現在8.50):

"20" <-分単位

ありがとう

4

1 に答える 1

22

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それだけです)。

于 2013-05-08T07:07:45.510 に答える