select top 5 * from wztg_ad where AdState=2 and Ad_class=4  and  adusername not in(select distinct a.adusername from (select sum(expend_cent) as bbb,adusername   from (select expend_cent,adusername from Wztg_AdUser_Expend where datediff(d,getdate(),Addtime)=0) f  group by   adusername) a,aduser_set b,wztg_aduser c where a.adusername = b.adusername and a.bbb >= b.totalmoney and c.adusername=b.adusername and c.state=-1) ORDER BY NEWID()
目的是利用这三个表读取符合条件的随机5个数据