语句及查询结果:
--上月天数
select EXTRACT(DAY from date_trunc('month',CURRENT_DATE)- interval '0 month'- interval '1 day');
--当前时间
select now();
select current_timestamp;
--当前年月日
select current_date date
当前年当前月
select extract(year from now());
select extract(month from now());
得到年月日
select to_date('2012-08-20 11:12:11','yyyy-mm-dd')
得到2012-08-20 date
select date_trunc('day',timestamp'2012-08-20 11:12:11')
得到2012-08-20 00:00:00 timestamp without time zone
加几天
select date '2001-09-28' + integer '7'
得到2001-10-05 date
两日期间隔天数
select date '2001-10-01' - date '2001-09-28'
得到3 integer
两时间相减
select timestamp '2001-09-29 03:00' - timestamp '2001-09-27 12:00'
得到 1 day 15:00:00 interval
字符串先转成日期再转成字符串
select to_char(to_date('2012-08-20 11:12:11','yyyy-mm-dd'),SimSun; font-size:16px; line-height:24px"> 得到 2012-08-20 text
函数
select age(now(),timestamp '1989-02-05');
得到24 years 4 mons 26 days 18:00:04.631114 interval