Oracle取日期小时:一种方法(oracle取日期小时)
Oracle数据库可以使用许多种方法来获取日期的小时。下面就介绍一种使用Oracle将日期拆分成小时的方法:
SQL> SELECT extract(hour FROM SYSTIMESTAMP) AS “Hour” FROM dual;
Hour
——-
11
上面的查询语句使用了EXTRAXT函数从SYSTIMESTAMP中提取时间。我们也可以使用EXTRACT函数来从其他指定的日期字段中提取小时,如:
SQL> SELECT extract(hour FROM timestamp ‘2020-01-10 10:17:15’) AS “Hour” FROM dual;
Hour
——-
10
如果希望将提取的小时格式化为范围0-23,可以使用如下语句:
SQL> SELECT extract(hour FROM SYSTIMESTAMP) % 24 AS “Hour” FROM dual
Hour
——-
11
如果需要在PL/SQL中使用该函数,可以使用如下代码:
DECLARE
vhour INTEGER;
BEGIN
SELECT EXTRACT(hour FROM SYSTIMESTAMP) % 24
INTO vhour
FROM dual;
DBMS_OUTPUT.PUT_LINE(‘Hour = ‘ || vhour);
END;
上面的操作可以返回当前系统时间的小时信息。由于EXTRAXT函数的强大功能,我们还可以提取其他字段,如minute、second等,如:
SQL> SELECT extract(minute FROM SYSTIMESTAMP) % 60 “Minute” FROM dual;
Minute
——-
44
SQL> SELECT extract(second FROM SYSTIMESTAMP) % 60 “Second” FROM dual;
Second
——-
52
总之,使用EXTRACT函数来取日期小时可以根据需要结合一些简单的表达式进行复杂的操作,以获取更具体的信息。