求一个SQL语句
有两个表,一个用户表,里面有用户名,最后登陆时间等字段,一个消息表,有接收人,发送时间等字段,现在A给B发消息,在发送的页面有一个listbox设置时效天数,假如B登陆时超过A所设置的天数,消息就删除,不知道这个删除语句如何写,主要是时间的判断。 
 现在在登陆button下更新数据库取得了最后登陆时间,string   sql   =    "update   用户信息表   set   最后登陆时间   =    ' "   +   System.DateTime.Now.ToString( "yyyy-MM-dd   HH:mm:ss ")   +    " 'where   用户名   =    ' "   +   Session[ "name "]   +    " ' "; 
                         L_database.execsql(sql); 
 接下来怎么办呢?
------解决方案--------------------delete  消息表 where id in  
 ( 
 select  a.id from 消息表 a  inner join 用户表 b on a.用户名=b.用户名 and   DATEADD(day, a.设置的天数,a.发送时间)> b.登陆时间 
 )   
 id 是关键字     
 ***************************************************************************** 
 欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码)    
 最新版本:20070212   
 http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
------解决方案--------------------string sql1 =  "delete from 消息表 where id in (select  a.id from 消息表 a  inner join 用户信息表 b on a.接收人=b.用户名 and   DATEADD(day, a.时效,a.发送时间)> b.最后登陆时间) ";