PostgreSQL的日期運算計算函數使用,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<=7order 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