time是数据库中的字段,我用time >=TO_DATE('2009-06-17 04:00:00','YYYY-MM-DD HH24:MI:SS') 查不出日期比2009-06-17 04:00:00晚的记录,但用TO_DATE(TO_CHAR(time,'YYYY-MM-DD HH24:MI:SS')>=TO_DATE('2009-06-17 04:00:00','YYYY-MM-DD HH24:MI:SS')可以查出相应的记录来,请问是不是time默认取值比较大小的时候是不是只比较年月日呀?还有我在eclipse中的TO_DATE(TO_CHAR(time,'YYYY-MM-DD HH24:MI:SS')在刚赋值后就用time替换了.高手们帮忙看看是什么原因呀
-----------------------------------------------
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
已选择6行。SQL> select time from test1.t_1 where time >= TO_DATE('2009-06-17 11:25:55','YYY
Y-MM-DD HH24:MI:SS');TIME
---------------------------------------------------------------------------
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
2009-06-17 12:32:36
已选择6行。没有问题呀。
应该是TO_DATE(TO_CHAR(time,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS'))>=TO_DATE('2009-06-17 04:00:00','YYYY-MM-DD HH24:MI:SS') 就是先把date转换成char,再转换成date
select time from venus_audit_auditevent_hist t where
TO_DATE(TO_CHAR(time,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') >= TO_DATE('2009-06-16 12:00:25','YYYY-MM-DD HH24:MI:SS') and
TO_DATE(TO_CHAR(time,'YYYY-MM-DD HH24:MI:SS'),'YYYY-MM-DD HH24:MI:SS') <=TO_DATE('2009-06-17 04:00:25','YYYY-MM-DD HH24:MI:SS')
select time from venus_audit_auditevent_hist t where
time >= TO_DATE('2009-06-16 12:00:25','YYYY-MM-DD HH24:MI:SS') and
time <=TO_DATE('2009-06-17 04:00:25','YYYY-MM-DD HH24:MI:SS') 上边的语句可以查出记录来,下边的查不出来