回 帖 发 新 帖 刷新版面

主题:[原创]有关时间天数问题--望高手指教

我要删除30天没有登录的用户的相关产品的记录,可以我下面的语句执行后是将所有的记录给删除了,不管是一天还是两天前有登录的也被删除.请问是哪儿出错了呢?

do while not rs_gezi.eof 
     ' userid = rs_gezi("userid")
      set rs = server.CreateObject("adodb.recordset")
         sql = "delete from gezi where userid in (select userid from [user] where datediff(""d"",lastdate,'"&now()&"') > 30)"
         rs.open sql,connsql,1,3
         
     rs_gezi.movenext()     
   loop

回复列表 (共5个回复)

沙发

select top 10 * from t_New 
where dir_id=2 and New_DataTime < DateAdd(day,-30,getdate())
这是个例子,

具体的你自己去试试!不知道对你有用吗?

板凳

sql = "delete from gezi where userid in (select userid from [user] where datediff('d',lastdate,'"&now()&"') > 30)"

3 楼

longlong16 你好!
那样写语法错误,试过了.

4 楼

[quote]longlong16 你好!
那样写语法错误,试过了.
[/quote]
像我那样的写法是可以的,里面具体的条件你自己可以去改。我以前也有道题也是跟你那道差不多的!

5 楼

问题已解决了,谢谢各位.
不是SQL错误,而是其他程序错误响影了下面的执行.

我来回复

您尚未登录,请登录后再回复。点此登录或注册