EXTRACT(datetime)
函数是从指定的时间字段或表达式中抽取年、月、日、时、分、秒等元素。
语法
EXTRACT (fields FROM datetime)
参数
参数 | 说明 |
fields | 要抽取的元素的名称: YEAR 、MONTH 、DAY 、HOUR 、MINUTE 、SECOND 、TIMEZONE_HOUR 、TIMEZONE_MINUTE 、TIMEZONE_MINUTE 、TIMEZONE_REGION 、TIMEZONE_ABBR 。 |
datetime | DATE 、TIMESTAMP 、TIMESTAMP WITH TIME ZONE 、TIMESTAMP WITH LOCAL TIME ZONE 、INTERVAL YEAR TO MONTH 、INTERVAL DAY TO SECOND 等数据类型的值。 |
返回类型
抽取元素 TIMEZONE_REGION
、TIMEZONE_ABBR
时,返回值的数据类型为 VARCHAR2
。抽取其他元素时,返回值的数据类型为 NUMBER
。
示例
执行以下语句:
SELECT EXTRACT(HOUR FROM TIMESTAMP '2001-2-16 2:38:40 ') 小时,
EXTRACT(MINUTE FROM TIMESTAMP '2001-2-16 2:38:40 ') 分钟,
EXTRACT(SECOND FROM TIMESTAMP '2001-2-16 2:38:40 ') 秒,
EXTRACT(DAY FROM TIMESTAMP '2001-2-16 2:38:40 ') 日,
EXTRACT(MONTH FROM TIMESTAMP '2001-2-16 2:38:40 ') 月,
EXTRACT(YEAR FROM TIMESTAMP '2001-2-16 2:38:40 ') 年
FROM DUAL;
查询结果如下:
+--------+--------+------+------+------+------+
| 小时 | 分钟 | 秒 | 日 | 月 | 年 |
+--------+--------+------+------+------+------+
| 2 | 38 | 40 | 16 | 2 | 2001 |
+--------+--------+------+------+------+------+