EXTRACT_SECOND
📄字数 723
👁️阅读量 加载中...
功能描述
从 expr 中提取秒数部分。
语法格式
sql
EXTRACT_SECOND(expr)输入参数
expr:要提取的时间日期类型表达式,支持的数据类型包括DATETIME、DATETIME WITH TIME ZONE、TIME、TIME WITH TIME ZONE、INTERVAL DAY TO SECOND、INTERVAL HOUR TO SECOND、INTERNAL MINUTE TO SECOND和INTERVAL SECOND。
提示
- 因
NULL无具体的类型,所以当参数为NULL时,会产生异常E10100 候选函数出现多义性,需要手动为参数指定具体的类型,如:EXTRACT_SECOND(NULL::DATETIME); - 以字符串形式传入日期时间值时,服务端优先匹配
DATETIME类型,所以参数解析时,按默认的时间格式解析,当参数不符合时间格式时(格式以参数 time_format 配置为准),执行报错:E19138 时间值常数错误,需要手动指定参数具体的类型,如:EXTRACT_SECOND('14:15:54'::TIME)或EXTRACT_SECOND(CAST('3 14:15:54' AS INTERVAL DAY TO SECOND))。
输出结果
DOUBLE 类型,提取出的秒数(可精确到微秒),返回值范围 [-999999999.999999, 999999999.999999],输入参数为 NULL 时,输出结果为 NULL。
提示
- 因
TIME类型精确到毫秒,所以当输入参数为TIME或TIME WITH TIME ZONE类型时,返回值只精确到毫秒。
示例
sql
-- 提取'2025-07-03 14:15:54'的秒数部分
SQL> SELECT EXTRACT_SECOND('2025-07-03 14:15:54') FROM dual;
+--------------+
| EXPR1 |
+--------------+
| 5.400000e+01 |
+--------------+