PostgreSQL的时间函数使用整理

PG的时间函数使用整理如下 

1.获取系统时间函数

select now();                --2012-05-12 18:51:59.562+08
select current_timestamp;    --2012-05-12 18:52:12.062+08
select current_date;         --2012-05-12
select current_time;         --18:53:23.234+08

2.时间的计算 
--使用interval

select now()+interval '2 day';  --2012-05-14 20:05:32.796+08 2天后
select now()-interval '2 day';  --2012-05-10 20:07:23.265+08 2天前
select now()+interval '2 hour'; --2012-05-12 22:06:38.375+08 2小时后
....

interval可以不写,其值可以是
Abbreviation  Meaning
Y             Years
M             Months (in the date part)
W             Weeks
D             Days
H             Hours
M             Minutes (in the time part)

3.时间的截取 
--使用extract extract(interval,timestamp);

select extract(year from now());  --2012
select extract(mon from now());     --5 5月份
...

interval值参考上面

4.时间的转换

select timestamp '2012-05-12 18:54:54';  --2012-05-12 18:54:54
select date '2012-05-12 18:54:54';       --2012-05-12
select time  '2012-05-12 18:54:54';      --18:54:54
select TIMESTAMP WITH TIME ZONE '2012-05-12 18:54:54'   
--2012-05-12 18:54:54+08

--与unix时间戳的转换
SELECT TIMESTAMP 'epoch' + 1341174767 * INTERVAL '1 second'; 
--2012-07-01 20:32:47

以上是基本的PG函数使用,可满足一般的开发运维应用

转自:http://my.oschina.net/Kenyon/blog/57188

posted on 2013-07-27 14:49  newmanzhang  阅读(528)  评论(0编辑  收藏  举报

导航