時(shí)間:2024-03-13 13:56作者:下載吧人氣:22
昨天遇到一個(gè)floor向下取整的問(wèn)題,現(xiàn)在將它記錄下來(lái)。
首先f(wàn)loor是需要一個(gè)int或者dp。那么我們?nèi)掌诩訙p轉(zhuǎn)換,timestamp 轉(zhuǎn)data,是需要先將其轉(zhuǎn)成char,再由char轉(zhuǎn)date,再相減,得出一個(gè)符合floor函數(shù)要求的值。
代碼如下:
FLOOR((to_date(to_char(current_timestamp, ‘yyyy-MM-dd hh:mi:ss’), ‘yyyy-mm-dd’)
– to_date(to_char(ca.birthday, ‘yyyy-MM-dd hh:mi:ss’), ‘yyyy-mm-dd’)) / 365) as age
同樣的,在java里面要想得到timestamp的當(dāng)前時(shí)間,也是用util的date轉(zhuǎn)string再轉(zhuǎn)timestamp
補(bǔ)充:PostgreSQL的日期運(yùn)算計(jì)算函數(shù)使用
SqlServer的連接符:+(加號(hào))
Sqlite的連接符:.(點(diǎn))
PostgreSQL的連接符:||(或)
今天在PostgreSQL計(jì)算日期的時(shí)候,翻了一些資料,很少,就記錄下來(lái)吧~!
其中使用到的函數(shù)及變量
to_char()、Date()、now()、current_date
計(jì)算兩個(gè)日期的差
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
網(wǎng)友評(píng)論