PostgreSQL的日期运算计算函数使用

2015-07-16 12:08:00 · 作者: · 浏览: 0

PostgreSQL的日期运算计算函数使用


一:各个数据中的连接符


SqlServer的连接符:+(加号)


Sqlite的连接符:.(点)


PostgreSQL的连接符:||(或)


二:


今天在PostgreSQL计算日期的时候,翻了一些资料,很少,就记录下来吧~!


其中使用到的函数及变量


to_char()、Date()、now()、current_date


计算两个日期的差


current_date为今天的日期,为:2015-06-03



Date('2015-06-05')-current_date=2


select? to_char(current_date,'yyyy')||'-'||to_char(birthday,'mm-dd'),Date(to_char(current_date,'yyyy')||'-'||to_char(birthday,'mm-dd'))-current_date


from tablename where delflag=0 and status=0


and Date(to_char(current_date,'yyyy')||'-'||to_char(birthday,'mm-dd'))-current_date>=0


and Date(to_char(current_date,'yyyy')||'-'||to_char(birthday,'mm-dd'))-current_date<=7 order by birthday desc


三:



select now() + interval '1 days'; select now() + interval '1 month'; select now() + interval '1 years'; 四:SqlServer中进行日期计算时,用到函数CONVERT(),DATEPART(),getDate()
select CONVERT(varchar(10),CONVERT(varchar(4),DATEPART(year,getDate()))+'-'+ CONVERT(varchar(2),DATEPART(month,birthday))+'-'+CONVERT(varchar(2),DATEPART(day,birthday)),120),datediff(day,CONVERT(varchar(10),getdate(),120),CONVERT(varchar(10),CONVERT(varchar(4),DATEPART(year,getDate()))+'-'+ CONVERT(varchar(2),DATEPART(month,birthday))+'-'+CONVERT(varchar(2),DATEPART(day,birthday)),120)) from tablename where delflag=0 and status=0 and datediff(day,CONVERT(varchar(10),getdate(),120),CONVERT(varchar(10),CONVERT(varchar(4),DATEPART(year,getDate()))+'-'+ CONVERT(varchar(2),DATEPART(month,birthday))+'-'+CONVERT(varchar(2),DATEPART(day,birthday)),120))<=7 and datediff(day,CONVERT(varchar(10),getdate(),120),CONVERT(varchar(10),CONVERT(varchar(4),DATEPART(year,getDate()))+'-'+ CONVERT(varchar(2),DATEPART(month,birthday))+'-'+CONVERT(varchar(2),DATEPART(day,birthday)),120))>=0 order by birthday desc


------------------------------------华丽丽的分割线------------------------------------


------------------------------------华丽丽的分割线------------------------------------