语句本身没错,可能是参数问题,datetime是有时分秒的,注意你的变量@TimeFrom,@TimeTo的时分秒问题

解决方案 »

  1.   

    <,> 或者between ....and....,你的语句没问题
      

  2.   

    我的变量值是通过DateTimePicker传入的,是不是比较前,应将其变为ShortDate
      

  3.   

    数据库中的OrderTime字段值 如:2005-12-29 11:28:44.183
      

  4.   

    SELECT * FROM   OrderInfo WHERE  convert(varchar(10),OrderTime,120)>=
                                     conver(varchar(10),@TimeFrom ,120) AND 
                                     convert(varchar(10),OrderTime,120)<=
                                     convert(varcha(10),@TimeTo,120)
      

  5.   

    @TimeFrom datetime,
    @TimeTo   datetime
     AS
         SELECT * FROM   OrderInfo
         WHERE OrderTime>=@TimeFrom AND Orderime<=@TimeTo-------注意如果OrderTime是带有时分秒,则一定要注意@TimeFrom、@TimeTo的值
    如:OrderTime是'2005-12-28 10:15:00'

    @TimeFrom='2005-12-28'
    @TimeTo=@TimeFrom='2005-12-28',则肯定查不到数据应该将@TimeFrom、@TimeTo去掉时分秒后,用@TimeTo+1作为上界
    即:
         SELECT * FROM   OrderInfo
         WHERE OrderTime>=@TimeFrom     -->='2005-12-28'
              AND Orderime<@TimeTo      --<'2005-12-29'
      

  6.   

    @TimeFrom、@TimeTo的值是通过DateTimePicker获取的,其值也包含了时分秒啊
      

  7.   

    方法很多:
    SELECT * FROM   OrderInfo
    WHERE datediff(day,@TimeFrom,OrderTime)>=0
    AND datediff(day,OrderTime,@TimeTo)>=0
    或者:
    SELECT * FROM   OrderInfo
    WHERE OrderTime>=convert(varchar(10),@TimeFrom,120)
    AND OrderTime<convert(varchar(10),@TimeTo+1,120)