How To Get The Date And Time From Timestamp In Postgresql Select Query?
How to get the date and time only up to minutes, not seconds, from timestamp in PostgreSQL. I need date as well as time. For example: 2000-12-16 12:21:13-05 From this I need 2000
Solution 1:
To get the date from a timestamp (or timestamptz) a simple cast is fastest:
SELECT now()::date
You get the date according to your local time zone either way.
If you want text in a certain format, go with to_char() like @davek provided.
If you want to truncate (round down) the value of a timestamp to a unit of time, use date_trunc():
SELECT date_trunc('minute', now());
Solution 2:
There are plenty of date-time functions available with postgresql:
See the list here
http://www.postgresql.org/docs/9.1/static/functions-datetime.html
e.g.
SELECTEXTRACT(DAYFROMTIMESTAMP'2001-02-16 20:38:40');
Result: 16For formatting you can use these:
http://www.postgresql.org/docs/9.1/static/functions-formatting.html
e.g.
select to_char(current_timestamp, 'YYYY-MM-DD HH24:MI') ...
Solution 3:
This should be enough:
select now()::date, now()::time
, pg_typeof(now()), pg_typeof(now()::date), pg_typeof(now()::time)
Post a Comment for "How To Get The Date And Time From Timestamp In Postgresql Select Query?"