age (times tamp '2001-04-10', times tamp
'1957-06-13')
43 years 9 mons 27 days
age (times tamp)
interval
从current _ date 减去参数后的结果(在午夜)
age (times tamp '1957-06-13')
43 years 8 mons 3 days
clock_ times tamp()
timestamp with time zone
实时时钟的当前时间戳(在语句执行时变化)
current _ date
date
当前的日期;
current_ time
time with time zone
当日时间;
current_ times tamp
timestamp with time zone
当前事务开始时的时间戳;
date_part (text, times tamp)
double precision
获取子域 (等效于 extract);
date_ part ('hour', times tamp '2001-02
-16 20: 38:40')
20
date_ part (text, interval)
double precision
获取子域(等效于 extract);
date_ part ( 'month', interval '2 years
3 months')
3
date_ trunc (text, times tamp)
timestamp
截断成指定的精度;
date_trunc ( 'hour', times tamp '2001-02-16
20:38:40')
2001-02 -16 20: 00:00
date_ trunc (text, interval)
interval
截取指定的精度,
date_trunc ('hour', interval '2 days 3
hours 40 minutes')
2 days 03: 00:00
extract (field from times
tamp)
double precision
获取子域;
extract ( hour from times tamp '2001-02
-16 20: 38 :40')
20
extract ( field from interval)
double precision
获取子域;
extract ( month from interval '2 years
3 months')
3
isfinite ( date)
boolean
测试是否为有穷日期(不是 +/-无穷)
isfinite (date '2001-02-16')
true
isfinite (times tamp)
boolean
测试是否为有穷时间戳(不是 +/-无穷)
isfinite ( times tamp '2001-02-16 21:28
:30')
true
isfinite ( interval)
boolean
测试是否为有穷时间间隔
isfinite ( interval '4 hours')
true
justify _ days ( interval)
interval
按照每月 30 天调整时间间隔
justify_ days ( interval '35 days')
1 mon 5 days
justify _ hours ( interval)
interval
按照每天 24 小时调整时间间隔
justify _ hours ( interval '27 hours')
1 day 03 :00:00
justify _ interval ( interval)
interval
使用justify_ days 和 justify_ hours调整时间间隔的同时进行正负号调整
justify_ interval ( interval '1 mon -1
hour')
29 days 23: 00:00
local time
time
当日时间;
local times tamp
timestamp
当前事务开始时的时间戳;
make_ date (year int, month
int, day int)
date
为年、月和日字段创建日期
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)
interval
从年、月、周、天、小时、分钟和秒字段中创建间隔
make_ interval (days := 10)
10 days
make_ time ( hour int, min
int, sec double precision)
time
从小时、分钟和秒字段中创建时间
make_ time (8, 15, 23.5)
08:15: 23.5
make_ times tamp (year int,
month int, day int,
hour int, min int, sec
double precision)
timestamp
从年、月、日、小时、分钟和秒字段中创建时间戳
make_ times tamp (2013, 7, 15, 8, 15,
23.5)
2013-07-15 08:15: 23.5
make _ times tamptz (year int,
month int, day int,
hour int, min int, sec
double precision, [
timezone text ])