rxcr.net
当前位置:首页 >> orAClE中时间比较大小 >>

orAClE中时间比较大小

oracle中date的类型可以直接使用<, >, <>进行比较,字符串类型可以先转换成date类型在进行比较 select case when to_date('2017-01-20', 'yyyy-mm-dd') > sysdate then 'true' else 'false' end from dual

可以比较大小,譬如:select * from GC_GARBAGE t where t.submittime to_date( '2012-12-13 10:58:00' , ' yyyy-mm-dd hh24:mi:ss' );

比较日期是不需要通过int类型的,可以用to_date函数,如果你的日期格式是固定的,那么可以to_date('2011-10-21','yyyy-mm-dd') ,比如A,B两个字段都是格式固定的Varchar2型日期值,那么,比较日期可以用如下语句 select * from 表名 where to_date(A,'yyyy-mm-dd') -to_date(B,'yyyy-mm-dd') >180 oracle环境下测试通过

1 不用转换,直接相减,看正负.结果还可以表明两个日期的差距,正的说明前者大,负的是后者大.2 做判断是大于还是小于.

就用大于、小于、等于号to_date(sysdate,'yyyy-mm-dd')就可以进行日期、时间类型的比较.

如果都是date类型,直接使用 大于、小于这些来比较在sql中,如果是多个字段比较:select case when 日期1>日期2 then 日期1 else 日期2 end as 较大的日期 from 表名如果是同一个字段内多条值比较,就可以直接用max 和min这些select max(日期字段) as 大的日期 from 表名

可以 select case when date1-date2 > 0 then 1 when date1-date2 = 0 then 2 else 3 end as column1from tablename

select case when aa-bb>0 then 0 else 1 endfrom 表

如果是date型比较大小,直接用大于、小于比较就可以了.字符型的也可以直接比较或者转化为to_date('20121106','yyyymmdd')再比较.日期相减 date1-date2 算出来的为多少天,*24可以转化差多少小时,同理*24*60*60为相差多少秒

如果都是百date类型,直接使用 大于、小于这些来比较在sql中,如果是多个字段比较:select case when 日期度1>日期2 then 日期1 else 日期2 end as 较大的日内期 from 表名容如果是同一个字段内多条值比较,就可以直接用max 和min这些select max(日期字段) as 大的日期 from 表名

网站首页 | 网站地图
All rights reserved Powered by www.rxcr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com