oracle数据库的一些操作

往oracle 数据库中导入dmp,

$imp username/password file='C:\20130106flow.dmp' full=y ignore=y

查询条件为时间类型,select * from ST_YCR_2012 where TM = to_date('2012/05/01', 'yyyy/mm/dd')

发现精确查询时间返回的结构有问题,以上查询语句通常返回空或者只返回一条记录,但是实际上字段TM='2012/05/01'的记录有很多,不解

偶然试了下按范围查询,发现结果出乎意料的对了!

select * from ST_YCR_2012 where (TM > to_date('2012/05/01', 'yyyy/mm/dd')  and TM < to_date('2012/05/02', 'yyyy/mm/dd'))

以上语句返回结果正确

这取决于TM 的精度,to_date('2012/05/01','yyyy/mm/dd') 默认是取0点0分0秒