欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

跟我一起学【PostgreSQL】之——时间相关

程序员文章站 2024-03-13 15:29:57
...

1、以下方法只能获取当前年份: 

select   to_char(current_date,'yyyy')  为 character varying格式类型
select extract(year from now())  为double precision 格式类型
select to_char((SELECT now()::timestamp),'yyyy')  为character varying格式类型

2、获取下一年的年份:

select to_char((SELECT now()::timestamp + '1 year'),'yyyy')    为character varying格式类型

3、获取上一年的年份:

select to_char((SELECT now()::timestamp + '-1 year'),'yyyy')   为character varying格式类型
---如果是时间格式
select extract(month from now())
---如果是字符串,可以这样提取,月份不带0
select extract(month from timestamp '2019-06-15 15:32:31');
select to_timestamp(now(),'YYYY-MM-DD HH24:MI:SS')


4.其他求时间的语句:

1.当前时间向前推一天
SELECT current_timestamp - interval '1 day'
例:求出最近三天的数据
select * from 表名 where date between (SELECT current_timestamp - interval '3 day') 
and current_timestamp
2.当前时间向前推进一个月
SELECT current_timestamp - interval '1 month'
3.当前时间向前推进一年
SELECT current_timestamp - interval '1 year'
4.当前时间向前推一小时:
SELECT current_timestamp - interval '1 hour'
5.当前时间向前推一分钟:
SELECT current_timestamp - interval '1 min'
6.当前时间向前推60秒:
SELECT current_timestamp - interval '60 second'


原文:https://blog.csdn.net/dzz_dzz/article/details/8820564