私は PostgresQL と PHP を初めて使用し、PostgresQL Timestamp オブジェクトを使用しており、現在とそのタイムスタンプの違いを見つけて、年、月、日で表示しようとしています。これを行うことはありますか?
ありがとう!
私は PostgresQL と PHP を初めて使用し、PostgresQL Timestamp オブジェクトを使用しており、現在とそのタイムスタンプの違いを見つけて、年、月、日で表示しようとしています。これを行うことはありますか?
ありがとう!
select age(now(), '2010-01-02 12:34:35');
完全版:
select substring(a from 1 for (position('days' in a) + 3))
from (select (age(now(), '2010-01-02 12:34:35'))::text) s(a)
;
substring
------------------------
2 years 4 mons 30 days
(1 row)
2 つのタイムスタンプを減算するだけで、結果はinterval
.
「今」を取得するには、now()
またはcurrent_timestamp
(とりわけ)を使用できます。
SELECT now() - '2010-02-21 20:11:32';
ただし、これは次のように表示されます。
830 days 23:00:50.127241
正当化された表現を取得するには、age()
またはを使用しますjustify_interval()
SELECT justify_interval(now() - '2010-02-21 20:11:32');
同じ値を次のような形式で表示します。
2 years 3 mons 20 days 23:01:34.095813
特定の出力形式が必要な場合は、to_char()