oracle中对varchar2类型的日期字段进行查询

日期字段格式都是一样的2015-05-05。其类型是varchar2(20),想要根据某一个月份来进行查询,不知道怎么写sql语句。。
我试了什么to_char(to_date(date,'yyyy-mm-dd hh24:mi:ss'),'yyyymm')=201505;总也不行,不是报错ORA-01840,就是报错ORA-01839....

根据月份就用like 2015-05%这种呗

试试 to_char(date,"yyyymm")=201505

这直接使用like进行模糊查询就行了

你保存在Oracle的日期类型字符串,就要用操作字符串的方式。日期型就用日期型的数据类型存储为什么用字符串型,那样很难办法判断某个时段的

判断具体日期倒可以用like

like 或者to_char

y式试to_char(to_date(date,'yyyy-mm-dd'),'yyyymm')=201505,你数据格式中没有时间,to_date的时候不用加,to_char的结果也可以只显示月

还没结贴,这个很简单的,如果用字符型比较一下like

select UPDATE_TIME,to_char(to_date(UPDATE_TIME,'yyyy-mm-dd HH24:mi:ss'), 'mm')
from gdws_sys_hosp t