能告诉我你这是在哪里应用这一句吗?
在存储过程中用他,:ymda应该换成@ymda;
在query中应用,不一定支持datediff的,
你再查看一下datediff的语法

解决方案 »

  1.   

    都不是,在asp文件中调用
    select * from  table where datediff(d,dt,getdate())<=30
    可以得到结果的
      

  2.   

    ymda=cdate(request("ymda"))
    ymdb=cdate(request("ymdb"))
    rs.open "select * from guess where uid='"&tag&"' and 
    '"&datediff(d,ymda,dt)&"'>=0 and '"&datediff(d,dt,ymdb)&"'>=0 order by dt desc",,1,2
    想得到在时间段内的数据记录
      

  3.   

    一种:
    ymda=cdate(request("ymda"))
    ymdb=cdate(request("ymdb"))rs.open "select * from guess where uid='" & Tag & "' and'" & " dt BETWEEN '" & Format(ymda, "yyyy/mm/dd") & "' AND '" & Format(ymdb, "yyyy/mm/dd") & "' order by dt desc", , 1, 2
    rs.open "select * from guess where uid='" & Tag & "' and'" & " dt BETWEEN '" & Format(ymda, "yyyy/MM/dd hh:mm:ss") & "' AND '" & Format(ymdb, "yyyy/MM/dd hh:mm:ss") & "' order by dt desc", , 1, 2或者rs.open "select * from guess where uid='" & Tag & "' and " & " DateDiff(d,convert(datetime,'" & Format(ymda, "yyyy/mm/dd") & "'),dt)>=0 " & 
    " and  DateDiff(d,dt,convert(datetime,'" & Format(ymdb, "yyyy/mm/dd") & "'))>=0  order by dt desc", , 1, 2
      

  4.   

    补充:也可以使用(SQL形式)select * from guess where uid='001' and dt>='2000/1/1' and dt<='2000/2/1'
      

  5.   

    声明一个变量用于存放含有其他变量的sql语句,而后将该变量初始化后再 rs.open (该变量)即可