GETHOUR
📄字数 514
👁️阅读量 加载中...
功能描述
从 expr
中提取小时部分,同 HOUR() 函数。
语法格式
sql
GETHOUR(expr)
输入参数
expr
:要提取的时间日期类型表达式,支持的数据类型包括DATETIME
、DATETIME WITH TIME ZONE
、TIME
和TIME WITH TIME ZONE
。
提示
- 因
NULL
无具体的类型,所以当参数为NULL
时,会产生异常E10100 候选函数出现多义性
,需要手动为参数指定具体的类型,如:NULL::DATETIME
; - 以字符串形式传入日期时间值时,服务端优先匹配
DATETIME
类型,所以参数解析时,按默认的时间格式解析,当参数不符合时间格式时(格式以参数 time_format 配置为准),执行报错:E19138 时间值常数错误
,需要手动指定参数具体的类型,如:GETHOUR('11:44:58.157'::TIME)
或GETHOUR(CAST('11:44:58.157+8:00' AS TIME WITH TIME ZONE))
。
输出结果
INTEGER
类型,提取出的小时部分,返回值范围 [0,23]
,输入参数为 NULL
时,输出结果为 NULL
。
示例
sql
-- 提取'2025-05-05 11:44:58.157'的小时部分
SQL> SELECT GETHOUR('11:44:58.157'::TIME) FROM dual;
+-------+
| EXPR1 |
+-------+
| 11 |
+-------+