證明演示了基本算術操作符的行為(+,*,等):
操作符 | 例子 | 結果 |
---|---|---|
+ | 日期'2001-09-28'+整數(shù)'7' | 日期“ 2001-10-05” |
+ | 日期'2001-09-28'+間隔'1小時' | 一場'2001-09-28 01:00:00' |
+ | 日期“ 2001-09-28” +時間“ 03:00” | 一場'2001-09-28 03:00:00' |
+ | 間隔“ 1天” +間隔“ 1小時” | 間隔“ 1天01:00:00” |
+ | 最佳“ 2001-09-28 01:00” +間隔“ 23小時” | 一流'2001-09-29 00:00:00' |
+ | 時間“ 01:00” +間隔“ 3小時” | 時間'04:00:00' |
-- | -間隔“ 23小時” | 間隔'-23:00:00' |
-- | 日期'2001-10-01'-日期'2001-09-28' | 整體“ 3”(天) |
-- | 日期'2001-10-01'-整體'7' | 日期“ 2001-09-24” |
-- | 日期'2001-09-28'-間隔'1小時' | 一場'2001-09-27 23:00:00' |
-- | 時間'05:00'-時間'03:00' | 間隔'02:00:00' |
-- | 時間'05:00'-間隔'2小時' | 時間'03:00:00' |
-- | timestamp'2001-09-28 23:00'-間隔'23 hours' | 一流'2001-09-28 00:00:00' |
-- | 間隔“ 1天”-間隔“ 1小時” | 間隔“ 1天-01:00:00” |
-- | 一場'2001-09-29 03:00'-一場'2001-09-27 12:00' | 間隔“ 1天15:00:00” |
* | 900 *間隔“ 1秒” | 間隔'00:15:00' |
* | 21 *間隔“ 1天” | 間隔“ 21天” |
* | 雙精度'3.5'*間隔'1小時' | 間隔'03:30:00' |
/ | 間隔“ 1小時” /雙精度“ 1.5” | 間隔'00:40:00' |
功能 | 返回類型 | 描述 | 例子 | 結果 |
---|---|---|---|---|
age(timestamp, timestamp)
|
間隔 | 最初參數(shù)后的“符號化”結果,使用年和月,不只是使用天 | 年齡(至少“ 2001-04-10”,只能“ 1957-06-13”) | 43年9個月27天 |
age(timestamp)
|
間隔 | 從
current_date 最初參數(shù)后的結果(在午夜)
|
年齡(每年“ 1957-06-13”) | 43年8個月3天 |
clock_timestamp()
|
帶時區(qū)的預算 | 實時時鐘的當前最佳(在語句執(zhí)行時變化) | ||
current_date
|
日期 | 當前的日期; | ||
current_time
|
帶時區(qū)的時間 | 當日時間; | ||
current_timestamp
|
帶時區(qū)的預算 | 當前事務開始時的合理; | ||
date_part(text, timestamp)
|
雙精度 | 獲取子域(等效于
extract );
|
date_part(“小時”,預期“ 2001-02-16 20:38:40') | 20 |
date_part(text, interval)
|
雙精度 | 獲取子域(等效于
extract );
|
date_part(“月”,間隔“ 2年3個月”) | 3 |
date_trunc(text, timestamp)
|
最好記 | 截斷成指定的精度; | date_trunc(“小時”,分為“ 2001-02-16 20:38:40') | 2001-02-16 20:00:00 |
date_trunc(text, interval)
|
間隔 | 截取指定的精度, | date_trunc('小時',間隔'2天3小時40分鐘') | 2天03:00:00 |
extract (初步記中的起點)
|
雙精度 | 獲取子域 | 摘錄(從預設'2001-02-16 20:38:40'開始的小時數(shù)) | 20 |
extract (間隔的最高)
|
雙精度 | 獲取子域 | 摘錄(間隔“ 2年3個月”中的月份) | 3 |
isfinite(date)
|
布爾值 | 測試是否為有窮日期(不是+/-無窮) | 無限(日期'2001-02-16') | 真正 |
isfinite(timestamp)
|
布爾值 | 測試是否為有窮困(不是+/-無窮) | 無限(至少'2001-02-16 21:28:30') | 真正 |
isfinite(interval)
|
布爾值 | 測試是否為有窮時間間隔 | 無限(間隔“ 4小時”) | 真正 |
justify_days(interval)
|
間隔 | 按照每月30天調整時間間隔 | justify_days(間隔“ 35天”) | 1星期一5天 |
justify_hours(interval)
|
間隔 | 按照每天24小時調整時間間隔 | justify_hours(間隔“ 27小時”) | 1天03:00:00 |
justify_interval(interval)
|
間隔 | 使用
justify_days 和
justify_hours 調整時間間隔的同時進行正負號調整
|
justify_interval(間隔'1周一-1小時') | 29天23:00:00 |
localtime
|
時間 | 當日時間; | ||
localtimestamp
|
最好記 | 當前事務開始時的合理; | ||
make_date(year int, month int, day int)
|
日期 |
為年,月和日劃分創(chuàng)建日期 | make_date(2013,7,15) | 2013-07-15 |
make_interval(years int DEFAULT 0, months int DEFAULT 0, weeks int DEFAULT 0, days int DEFAULT 0, hours int DEFAULT 0, mins int DEFAULT 0, secs double precision DEFAULT 0.0)
|
間隔 |
從年,月,周,天,小時,分鐘和秒分段中創(chuàng)建間隔 |
make_interval(天數(shù)== 10) |
10天 |
make_time(hour int,
|
時間 | 從小時,分鐘和秒分段中創(chuàng)建時間 | make_time(8,15,23.5) | 08:15:23.5 |
make_timestamp(year int, month int, day int, hour int, min int, sec double precision)
|
最好記 |
從年,月,日,小時,分鐘和秒分段中創(chuàng)建初始 |
make_timestamp(2013、7、15、8、15、23.5) |
2013-07-15 08:15:23.5 |
make_timestamptz(year int, month int, day int, hour int, min int, sec double precision, [ timezone text ])
|
帶時區(qū)的預算 |
從指定年期,使用當前的時區(qū)。 |
make_timestamptz(2013、7、15、8、15、23.5) |
2013-07-15 08:15:23.5 + 01 |
now()
|
帶時區(qū)的預算 | 當前事務開始時的合理; | ||
statement_timestamp()
|
帶時區(qū)的預算 | 實時時鐘的當前最佳; | ||
timeofday()
|
文字 | 與
clock_timestamp 相同,但結果是一個文本字符串;
|
||
transaction_timestamp()
|
帶時區(qū)的預算 | 當前事務開始時的合理; |
更多建議: