20

DATETIME列からHOURを取得する必要があります(0から23までの値が返されることを期待しています)。

SQL ServerのDATEPART関数に相当するOracleの機能はありますか?

4

5 に答える 5

26

別の方法は、ANSI標準であり、他のDBMSでも機能するEXTRACT関数ですが、sysdateの代わりにcurrent_timestamp(これもANSI)を使用する必要があります。

SELECT extract(hour from current_timestamp) 
FROM dual
于 2011-05-12T14:53:29.727 に答える
22
 SELECT to_number(to_char(sysdate, 'HH24')) FROM DUAL
于 2011-05-12T14:13:01.453 に答える
3

これがあなたが探しているものだと思います

select to_char(current_timestamp,'HH24') from dual;
于 2017-09-15T04:45:25.613 に答える
1

OracleでDATEPARTの種類の関数を使用する追加の方法について

DATEPART:-平日

-これにより、参照開始日の週の日が指定されます

DECLARE
Start_day date:=to_date('30-03-2012','DD-MM-YYYY');
check_date DATE:=SYSDATE;
Day_of_week NUMBER;
i NUMBER;
BEGIN
i:=to_char(Start_day,'D');
day_of_week:=mod((to_char(check_date,'D') -(i-1)+7),7);
if day_of_week=0
THEN
day_of_week:=7;
end if;
dbms_output.put_line(day_of_week);
END;    
于 2012-03-29T08:21:57.317 に答える
-1

日付の月名を取得したい場合

select to_char( 'month', sysdate())
于 2019-06-10T16:26:14.760 に答える