3.7 日期、时间类型
3.7.1 日期、时间类型介绍
timestamp [(p)] [with time zone]
8字节
时间和日期
4173 BC
5874897 AD
1毫秒/14位
timestamp [(p)] with time zone
8字节
时间和日期,带时区
4173 BC
5874897 AD
1毫秒/14位
interval [(p)]
12字节
时间间隔
-178000000年
178000000年
1毫秒/14位
date
4字节
只用于日期
4713 BC
5874897 AD
1天
time [(p)] [with time zone]
8字节
只用于一日内时间
00:00:00
24:00:00
1毫秒/14位
Time [(p)] with time zone
12字节
只用于一日内时间,带时区
00:00:00+1459
24:00:00-1459
1毫秒/14位
3.7.2 日期输入
任何标准的格式都可以,唯独不允许使用/作为间隔
3.7.3 时间输入
任何标准的格式都可以,但最好不要用时区缩写来表示时区
3.7.4 特殊值
epoch
date,timestamp
UNIX系统零时:1970-01-01 00:00:00+00
infinity
timestamp
时间戳最大值,比任何其他时间戳都晚
-infinity
timestamp
时间戳最小值,比任何其他时间戳都早
now
date,time,timestamp
当前事务开始时间
today
date,timestamp
今日午夜
tomorrow
date,timestamp
明日午夜
yesterday
date,timestamp
昨日物业
allballs
time
00:00:00.00 UTC
3.7.5 函数和操作符列表
+
date '2021-04-02' + integer '7'
date'2021-04-09'
+
date '2021-04-02' + interval '7 hour'
Timestamp'2021-04-02 07:00:00'
...
...
...
3.7.6 时间函数
age(timestamp, timestamp)
interval
减去参数后的“符号化结果”
age(timestamp'2011-05-02',timestamp'1980-01-01')
31 year 4 mons 1 day
age(timestamp)
interval
从current_date(获取当前日期)减去参数后的结果
age(timestamp'1980-01-01')
43 years 5 mons 15 days
...
...
...
...
...
3.7.7 extract 和 date_part函数
extract函数从日期/时间数值中抽取子域,如年,小时等
最后更新于