Oracleは、2つの日付の差を計算し、秒、分、時間、日、週、月、年の数

--计算两个时间差相差多少秒
select ceil((sysdate-t.transdate)* 24 * 60 * 60),t.transdate,sysdate from esc_trans_log t
--计算两个时间差相差多少分
select ceil((sysdate-t.transdate)* 24 * 60),t.transdate,sysdate from esc_trans_log t
--计算两个时间差相差多少小时
select ceil((sysdate-t.transdate)* 24),t.transdate,sysdate from esc_trans_log t
--计算两个时间差相差多少天
select ceil(sysdate-t.transdate),t.transdate,sysdate from esc_trans_log t
--计算两个时间差相差多少月
select trunc(months_between(sysdate,t.transdate)) from esc_trans_log t
--计算两个时间差相差多少年
select trunc(months_between(sysdate,t.transdate)/12) from esc_trans_log t
  • 天:ROUND(TO_NUMBER(END_DATE - START_DATE))
  • 小时:ROUND(TO_NUMBER(END_DATE - START_DATE)* 24)
  • 分钟:ROUND(TO_NUMBER(END_DATE - START_DATE)* 24 * 60)
  • 秒:ROUND(TO_NUMBER(END_DATE - START_DATE)* 24 * 60 * 60)
  • 毫秒:ROUND(TO_NUMBER(END_DATE - START_DATE)* * 1000年24 * 60 * 60)

またTO_DATEとTO_CHAR機能を総括します:

ORACLE中: 
選択TO_DATE( '2007-06-28夜07時51分20秒'、 'YYYY-MM-DD HH24:MI:SS')デュアルから; 
一般SQL中: 
選択TO_DATE( '2007-06-28 19: 51:20' 、 'YYYY-MM-DD HH:MM:SS')デュアルから。 


違い: 


1、HHはHH24に改訂されました。 
2、ミリメートル分はマイルを変更します。

  • 24時間のフォームが表示されHH24を使用します

選択to_char関数(SYSDATE、 'YYYY-MM-DD HH24:MI:SS')デュアルから。

選択TO_DATE( '2005-01-01夜01時14分20秒'、 'YYYY-MM-DD HH24:MI:SS')デュアルから。

1.定義説明日付フォーマット  

 

  • D週の週  
  • 9文字までスペースで埋めDAY-曜日名、  
  • 半ばDDの最初の数日間  
  • DDDの最初の数日間  
  • DY-日の短い名前  
  • IW ISO規格の最初の数週間で  
  • IYYY ISO標準の4桁の年  
  • YYYY 4年  
  • YYY、YY、Y最後の3年間、2、1  
  • HHの時間、12時間計  
  • HH24の時間、24時間計  
  • MI 分  
  • SS秒  
  • MM月  
  • 月速記月  
  • 月の月のフルネーム  
  • 月の最初の数週間W  
  • 最初の数週間でWW-年    

2.日付時間インターバル動作


現在時刻マイナス7分
間隔「7 - SYSDATE、SYSDATEを選択し 」MINUTEデュアルから
現在の時間マイナス7時間の時間
間隔「7」時間-選択SYSDATEをデュアルから
現在の時刻を引い7日
SYSDATEを選択-インターバルデュアルから「7」日
現在の時刻を引い7月の時間
を選択SYSDATE、SYSDATE -間隔「7デュアルから」月
現在の時刻マイナス7年間は
SYSDATE、SYSDATEを選択-間隔「7デュアルから」今年
の乗算間隔を番号
を選択SYSDATE、SYSDATE - 8 *インターバルデュアルから「2」時間


   文字操作に3日 


選択SYSDATE、to_char関数(SYSDATE、 'YYYY-MM-DD HH24:MI:SS')デュアルから
選択SYSDATE、to_char関数(SYSDATE、 'YYYY-MM-DD HH:MI:SS')デュアルから
選択SYSDATE、to_char関数(SYSDATE 、 'YYYY-DDD HH:MI:SS')デュアルから
選択SYSDATE、to_char関数(SYSDATE、 'YYYY-MM IW-DのHH:MI:SS')デュアルから


   これまでのキャラクターの4.操作 


選択TO_DATE( '2003年10月17日夜9時15分37秒'、 'YYYY-MM-DD HH24:MI:SS')デュアルから
具体的な利用と、ほとんど上記のTO_CHAR。


   使用5.トランク/ ROUND関数 


TRUNCデュアルから(SYSDATE、 'YEAR')を選択し
、デュアルから選択TRUNC(SYSDATE)
デュアルから選択to_char関数(TRUNC(SYSDATE、 'YYYY')、 'YYYY')を


    そこ6.oracleミリ秒のデータ型 


-毎秒時間をミリ秒単位で現在の日付時刻を返します
。デュアルからSELECT TO_CHAR(。CURRENT_TIMESTAMP(5)、「SSxFF:MI MON-DD-YYYY HH24」)
ミリ秒単位で返します現在の時刻の秒を、秒後に指定することができます-精度(最大9 =。)
SELECT TO_CHAR(CURRENT_TIMESTAMP(9)、 'MI:SSxFF')デュアルから。

公開された139元の記事 ウォン称賛13 ビュー9279

おすすめ

転載: blog.csdn.net/qq_18671415/article/details/104535538