TIMESTAMP_ROUND
对指定的 TIMESTAMP 进行四舍五入。如果省略精度实参,TIMESTAMP_ROUND
将舍入到天 (DD
) 精度。
行为类型
语法
TIMESTAMP_ROUND ( rounding‑target[, 'precision'] )
参数
- rounding‑target
- 求值结果为以下数据类型之一的表达式:
- precision
- 一个字符串常量,指定舍入值的精度,为以下之一:
-
世纪:
CC
|SCC
-
年:
SYYY
|YYYY
|YEAR
|YYY
|YY
|Y
-
ISO 年:
IYYY
|IYY
|IY
|I
-
季度:
Q
-
月:
MONTH
|MON
|MM
|RM
-
与一年的第 1 天相同的工作日:
WW
-
与 ISO 年的第一天相同的工作日:
IW
-
与当月第一天相同的工作日:
W
-
天(默认):
DDD
|DD
|J
-
第一个工作日:
DAY
|DY
|D
-
时:
HH
|HH12
|HH24
-
分:
MI
-
秒:
SS
注意
DATE
表达式不支持时、分和秒舍入。 -
示例
五入到最近的小时:
=> SELECT TIMESTAMP_ROUND(CURRENT_TIMESTAMP, 'HH');
ROUND
---------------------
2016-04-28 15:00:00
(1 row)
五入到最近的月份:
=> SELECT TIMESTAMP_ROUND('9-22-2011 12:34:00'::TIMESTAMP, 'MM');
ROUND
---------------------
2011-10-01 00:00:00
(1 row)