輕輕松松學(xué)會(huì)在Oracle中實(shí)現(xiàn)時(shí)間相加處理 |
發(fā)布時(shí)間: 2012/8/7 17:52:33 |
如何在Oracle中實(shí)現(xiàn)時(shí)間相加處理? 今天由于項(xiàng)目的需要,我負(fù)責(zé)編寫(xiě)Oracle中的存儲(chǔ)過(guò)程。以前從來(lái)沒(méi)有接觸過(guò),這次是個(gè)很好的學(xué)習(xí)機(jī)會(huì),好好把握! 但是,在使用過(guò)程中,遇到一個(gè)問(wèn)題,不知道該如何實(shí)現(xiàn)時(shí)間相加功能,因?yàn)橄到y(tǒng)中需要用來(lái)時(shí)間相加功能。通過(guò)網(wǎng)絡(luò)找資料,但是最終一無(wú)所獲。于是,決定自己寫(xiě)一個(gè)!希望可以給朋友有所幫助! create or replace function Add_Times (d1 in date,NewTime in date) return date is hh number; mm number; ss number; hours number; dResult date; begin -- 下面依次取出時(shí)、分、秒 select to_number(to_char(NewTime,?HH24?)) into hh from dual; select to_number(to_char(NewTime,?MI?)) into mm from dual; select to_number(to_char(NewTime,?SS?)) into ss from dual; -- 換算出NewTime中小時(shí)總和 hours := (hh + (mm / 60) + (ss / 3600))/ 24; -- 得出時(shí)間相加后的結(jié)果 select d1 + hours into dResult from dual; return(dResult); end Add_Times; -- 測(cè)試用例 -- select Add_Times(sysdate,to_date (?2004-12-06 03:23:00?,?YYYY-MM-DD HH24:MI:SS?)) from dual 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |