我觉得是不可以的,因为在比较时间的时候,数据类型是Date,在数据库插入一条数据时,如果用的是当前时间,那么 最多也只能是一个精确值,但是不能完全达到极限。如果你在统计的时候,统计的是某一个时间段,那么在用Between and 时候会出现问题。forExample:select * from __table_ where time between '2012-12-17 ' and '2012-12-18',那么你在统计的时候,如果你根据的是小时统计就会有问题我在真实项目中曾经就遇到过这样的问题,LZ可以自己做一个实验
select * from user where birthday between '1980-01-01' and '1981-01-01';
我传入了一个date类型的参数!为啥不行啊
楼主把要传给SqlServer的语句摘出来看看吧。
比如都设置成yyyy-MM-dd,这样比较的时候肯定不会出问题
最多也只能是一个精确值,但是不能完全达到极限。如果你在统计的时候,统计的是某一个时间段,那么在用Between and 时候会出现问题。forExample:select * from __table_ where time between '2012-12-17 ' and '2012-12-18',那么你在统计的时候,如果你根据的是小时统计就会有问题我在真实项目中曾经就遇到过这样的问题,LZ可以自己做一个实验
建议转换类型后比较。如果传的是字符串,比如在oracle中,用to_date()转换后再用between ... and,肯定是可以比较的