区间判断

上一篇 / 下一篇  2014-08-20 16:05:56

需求:安装起始时间和终止时间段内,只要有一天落到未来七天内的,就算符合条件;
以上很简单的时间区间判断,竟然忽视了一种情况,就是取值落到未来七天时间段的两边没有测试;开发人员的sql写的是,只是考虑到开始时间和结束时间,只要有一个落到时间段内就OK了;但是没有写都落到时间段外的话,


下面是错误和正确的sql语句对比(前提:未来七天我给的是2014-08-20~~2014-08-26)
错误sql如下:

select * from DeviceUsageApply where 
 ((InstallTimeStart>='2014-08-20' and InstallTimeStart<='2014-08-26') or (InstallTimeEnd>='2014-08-20' and InstallTimeEnd <='2014-08-26'))


正确sql如下:

select * from DeviceUsageApply where 
 ((InstallTimeStart>='2014-08-20' and InstallTimeStart<='2014-08-26') or (InstallTimeEnd>='2014-08-20' and InstallTimeEnd <='2014-08-26')  or (installtimestart<='2014-08-20' and installtimeend>='2014-08-26'))




TAG:

 

评分:0

我来说两句

日历

« 2024-05-03  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 12025
  • 日志数: 12
  • 建立时间: 2013-12-08
  • 更新时间: 2014-11-19

RSS订阅

Open Toolbar