oracle日期字段为varchar2类型,为啥能直接比较

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle日期字段为varchar2类型,为啥能直接比较相关的知识,希望对你有一定的参考价值。

oracle日期字段为varchar2类型,为什么能直接比较
可以将字符串转换为日期类型(TO_DATE方法)进行比较。
sql: SELECT TO_DATE(\'2006-05-01 19:25:34\', \'YYYY-MM-DD HH24:MI:SS\')-TO_DATE(\'20015-05-01 19:25:34\', \'YYYY-MM-DD HH24:MI:SS\') FROM DUAL;

备注:时间做差的话,越是靠近当前时间的日期越大,所以大于0就是前面的时间大,否则就是后面的时间大。
参考技术A 字符串的比较顺序是先比较第一个字符,然后第二个,以此类推,因此如果你的字段格式严格依照特定格式(包括位数一致),就可以用字符串直接比较

oracle中如何修改日期类型的字段值

参考技术A 首先必须把一个varchar类型的值转化为date类型后才可以插入:
sql:update
tablename
set
DATEcolumn
=
to_date('2015-05-04
20:00:00','yyyy-mm-dd
hh:mi:ss');
解释:修改tablename表中的日期字段的时间值为”2015-05-04
20:00:00“,to_date函数中第一个字段是要转化的值,第二个字段是日期的类型,这两个值必须保持格式一致。

以上是关于oracle日期字段为varchar2类型,为啥能直接比较的主要内容,如果未能解决你的问题,请参考以下文章

oracle 更新一个列 原来的字段为 ‘你好么’ 更新成 ‘你好’ 为啥 会变成‘你好 ’即多了两个空格。

oracle修改字段类型由varchar2修改为clob类型

oracle中两个varchar2类型的时间怎么进行比较

如何将oracle表中的字段由integer 转变为varchar2(50)

oracle 中比较日期大小,日期定义的是varchar2类型的,比如'2011-10-21'

Oracle的CLOB大数据字段类型(转)