使用SQL语句中between and查询数据出错
在我们整理店铺收银系统后台报表页面时,发现按时间段查询报表的数据出现了问题,发现报表显示出的数据,明显比数据库中的数据要少(最明显的是在数据库存在数据的情况下,查询单天记录时是没有数据的)。
经过层层检查,发现时DAL层的sql语句出错了。
使用数据库编程时间也不短了,这个纰漏还是第一次发现的。积土成山、积水成渊,如此纰漏累积起来,真是“杀人”于无形呀。
select * from t_SellLog where sellDate
between '2010-06-06 10:01:37' and '2010-06-06 21:59:59'
select * from t_SellLog where sellDate
between '2010-06-06 10:01:37' and '2010-06-06 10:58:47'
--返回的记录为从'2010-06-06 10:01:37'开始算起,不包括'2010-06-06 10:58:47'时刻的所有记录。
--通过以下查询出的记录清单,大家可以很清楚的认识到between and 的默认用法中容易被初学者遗漏之处