如果是date型比較大小,直接用大于、小于比較就可以了。
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司服務(wù),電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)伍家崗免費做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
字符型的也可以直接比較或者轉(zhuǎn)化為to_date('20121106','yyyymmdd')再比較。
日期相減 date1-date2 算出來的為多少天,*24可以轉(zhuǎn)化差多少小時,同理*24*60*60為相差多少秒
1、如果你的日期字段形如yyyy-mm-dd,sql如下select 你要的字段 from 你的表名 where 日期字段=to_date(to_char(sysdate,'yyyy-mm-dd'),'yyyy-mm-dd')2、如果你的時間字段形如yyyy-mm-dd HH24:MI:SS,sql如下select 你要的字段 from 你的表名 where 日期字段=sysdate
時間日期字段在數(shù)據(jù)庫底層都是以時間戳的形式存儲的,日期比較其實就簡單的轉(zhuǎn)換成了時間戳的比較, 也就是數(shù)字的比較
時間戳就是 格林威治時間1970年01月01日00時00分00秒到指定日期時間之間的秒數(shù)
2012-01-11 00:00:00的時間戳就是1326211200比較時間字段,底層實際比較的就是這個數(shù)字的時間戳
代碼如下:
d2 := to_date('20190528','yyyymmdd');
d3 := to_date('20170101','yyyymmdd');
d4 := sysdate;
if d1d3 then --格式不同進行比較
dbms_output.put_line('d1d3');
end if;
if d2d3 then --格式相同比較
dbms_output.put_line('d2d3');
end if;
if d1d4 then --格式不同進行比較
dbms_output.put_line('d1d4');
end if;
dbms_output.put_line('d4是:'||d4);
end;
擴展資料
oracle sql日期比較
oracle sql日期比較:
在今天之前:
select * from up_date where update to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update = to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
在今天只后:
select * from up_date where update to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
select * from up_date where update = to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
精確時間:
select * from up_date where update = to_date('2007-09-07 00:00:00','yyyy-mm-dd hh24:mi:ss')
oracle中date的類型可以直接使用, , 進行比較,字符串類型可以先轉(zhuǎn)換成date類型在進行比較
select?case?
when?to_date('2017-01-20',?'yyyy-mm-dd')??sysdate?
then?'true'
else?'false'?end
from?dual