Set @Selectdate=CONVERT(varchar(100),@Select_date,120)问题出在这句里
@Selectdate 是smalldatetime类型的
但是后面的CONVERT(varchar(100),@Select_date,120)是字符型的我猜你是不是想这样啊:Set @Selectdate=CONVERT(smalldatetime,@Select_date,120)

解决方案 »

  1.   

    呵呵,问题解决了,居然是 Datediff函数那里的 半角引号问题。其它地方没错。再来几个人就散分了
      

  2.   

    附加 datetime 类型的数据 SQL Server 会隐式转换,用不着转换函数。
      

  3.   

    TO coolingpipe(冷箫轻笛)Set @Selectdate=CONVERT(varchar(100),@Select_date,120)
    这里的varchar(100)是@Select_date的类型我把Select注销了看看转换结果是对的。主要是后面的查询哪里出错