日期:2014-05-19  浏览次数:20482 次

为何我下面的SQL语句得到的结果为空?
是一个时间比较的语句.

if(int.Parse(sday)   >   0)
{
      DateTime   dtt   =   DateTime.Now.AddDays(double.Parse(sday));
      wherestr   =   wherestr   +   "   and   addtime   between   ' "   +   dtt   +   " '   and   ' "   +   DateTime.Now   +   " ' ";
}

这样进行日期比较是否有问题?

------解决方案--------------------
DateTime dtt = DateTime.Now.AddDays(double.Parse(sday));
=> >
DateTime dtt = DateTime.Now.AddDays(int.Parse(sday));
------解决方案--------------------
if(int.Parse(sday) > 0)
{
DateTime dtt = DateTime.Now.AddDays(int.Parse(sday));
wherestr = wherestr + " and addtime between ' " + DateTime.Now + " ' and ' " + dtt + " ' ";
}
------解决方案--------------------
between 前后没关系。 大的在前也可查询到。 主要是dtt 要格式化成标准格式,以免受服务器时间格式影响。