av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

在Oracle9i中Oracle DATA計算時間差

瀏覽:3日期:2023-11-22 18:59:49
計算時間差是Oracle DATA數(shù)據(jù)類型的一個常見問題。Oracle支持日期計算,你可以創(chuàng)建諸如“日期1-日期2”這樣的表達式來計算這兩個日期之間的時間差。 一旦你發(fā)現(xiàn)了時間差異,你可以使用簡單的技巧來以天、小時、分鐘或者秒為單位來計算時間差。為了得到數(shù)據(jù)差,你必須選擇合適的時間度量單位,這樣就可以進行數(shù)據(jù)格式隱藏。 使用完善復雜的轉換函數(shù)來轉換日期是一個誘惑,但是你會發(fā)現(xiàn)這不是最好的解決方法。 round(to_number(end-date-start_date))- 消逝的時間(以天為單位); round(to_number(end-date-start_date)*24)- 消逝的時間(以小時為單位); round(to_number(end-date-start_date)*1440)- 消逝的時間(以分鐘為單位)。 顯示時間差的默認模式是什么?為了找到這個問題的答案,讓我們進行一個簡單的SQL *Plus查詢。 SQL> select sysdate-(sysdate-3) from dual;SYSDATE-(SYSDATE-3)------------------- 3這里,我們看到了Oracle使用天來作為消逝時間的單位,所以我們可以很輕易的使用轉換函數(shù)來把它轉換成小時或者分鐘。然而,當分鐘數(shù)不是一個整數(shù)時,我們就會碰到放置小數(shù)點的問題。 Select(sysdate-(sysdate-3.111))*1440fromdual;(SYSDATE-(SYSDATE-3.111))*1440------------------------------4479.83333當然,我們可以用ROUND函數(shù)(即取整函數(shù))來解決這個問題,但是要記住我們必須首先把DATE數(shù)據(jù)類型轉換成NUMBER數(shù)據(jù)類型。 Selectround(to_number(sysdate-(sysdate-3.111))*1440)fromdual;ROUND(TO_NUMBER(SYSDATE-(SYSDATE-3.111))*1440)---------------------------------------------- 4480我們可以用這些函數(shù)把一個消逝時間近似轉換成分鐘并把這個值寫入Oracle表格中。在這個例子里,我們有一個離線(logoff)系統(tǒng)級觸發(fā)機制來計算已經開始的會話時間并把它放入一個OracleSTATSPACK USER_LOG擴展表格之中。 Updateperfstat.stats$user_logsetelapsed_minutes =round(to_number(logoff_time-logon_time)*1440)whereuser = user_idandelapsed_minutes is NULL;
主站蜘蛛池模板: 亚洲国产成人精品久久 | www久久久 | 欧美 日韩 国产 成人 在线 | 一级免费a | 久久神马 | 久久精品国产久精国产 | 亚洲成av | 男女网站免费观看 | 一区二区日本 | av片网| 亚洲精品电影在线 | 在线一区视频 | 国产精品免费一区二区三区四区 | 国产精品高清一区二区 | 欧美在线观看一区 | 亚洲国产成人精品女人 | 免费国产视频 | 欧洲亚洲一区二区三区 | 99热电影| av中文在线观看 | 夜操| 亚洲精品一 | 成人欧美一区二区三区在线观看 | 免费国产黄网站在线观看视频 | 北条麻妃视频在线观看 | 女女爱爱视频 | 欧美黄色免费网站 | 亚洲九色| 欧美炮房 | 国产精品视频一区二区三区 | 免费在线看黄 | 久久精品国产亚洲a | 日韩在线91 | 欧美精品一区免费 | 欧美一级在线 | 国产在线aa | 国产ts一区| 国产精品一区久久久 | 国产99久久久国产精品 | 亚洲国内精品 | 中文字幕乱码一区二区三区 |