oracle里如何查询一段时间内的数据,我拿到的是日期字符串

oracle里如何查询一段时间内的数据,我从页面拿到的是字符串,如2011-6-9,我的条件是and zxsj between to_date('"+zxzxConditionBean.getZxsjq()+"','yyyy-mm-dd')" +
" and to_date('"+zxzxConditionBean.getZxsjz()+"','yyyy-mm-dd')"这种方式不能查到一天的数据,比如我的数据库里面2011-6-30有一条数据,但是我传入2011-6-29和2011-6-30就不能找到这条数据了!

第1个回答  2013-06-26
如果你只是要查询某一天的数据可以这样写and trunc(zxsj) = to_date('"+zxzxConditionBean.getZxsjq()+"','yyyy-mm-dd')"
第2个回答  2013-06-26
理论上BETWEEN AND 应该取的是>= 和 <=如果你的字段是DATE类型,最好看一下2011-6-30这条记录的日期是否包括时,分,秒,如果包括的话。就不会取到。
第3个回答  推荐于2021-01-25
你传进来的是日期但不包含时间信息,oracle默认取0点的时间,所以找不到2011-6-30的数据了。
相似回答