批量随机修改悬赏问题发布人
2010-08-14 19:49 音乐让我说 阅读(276) 评论(0) 编辑 收藏 举报最新我们的新网址 http://www.6eat.com 快要上线了,其中我们有一个版块叫“问答悬赏”,主要是网友提出问题,然后其他网友回答。我们程序员插入了很多测试数据,都是以“admin”的身份发布的,现在马上要上线了,需要把问题发布人改为我们公司N个文员的帐号,要不能是同一个帐号,现在要随机,我写了一段SQL脚本来解决,代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | declare @tempCount int select @tempCount= count (*) from ( select AskUser, count (Id) as AskTime from dbo.Eat_Reward_AskInfo group by AskUser having count (Id) > 4 ) as MyTempTable declare @i int set @i=1 declare @tempUser int declare @tempChildCount int while(@i <= @tempCount) begin select @tempUser=AskUser from ( select row_number() over( order by count (Id) Desc ) as MyNewId, AskUser, count (Id) as AskTime from dbo.Eat_Reward_AskInfo group by AskUser having count (Id) > 4 ) as MyTempTable where MyNewId=@i select @tempChildCount= count (*) from Eat_Reward_AskInfo where AskUser=@tempUser declare @j int set @j = 1 declare @tempMyChildId int while(@j <= @tempChildCount) begin select @tempMyChildId=Id from ( select row_number() over( order by Id asc ) as MyNewChildId,* from Eat_Reward_AskInfo where AskUser=@tempUser ) as MyTempChildTable where MyNewChildId=@j update Eat_Reward_AskInfo set AskUser= ( select top 1 Id from Eat_Users where UserName in ( 'flash3d' , '我来了' , '我是版主' , '骆驼草' , '水晶' , '新餐饮' , '温柔的一刀' , '简二先生' , '草叶' , '迷失在那年' , '义子' , '珍珠' , 'stere' , '蓝冰月' , '半夏' , '点点雨' , '江城子' , '艾瑞克' , '六月的雨' , '幸运石' , '新时代莫愁' , '小婷子' ) order by newId() ) where Id=@tempMyChildId set @j=@j + 1 end set @i=@i + 1 end |
谢谢大家,请多多指教。
作者:音乐让我说(音乐让我说 - 博客园)
出处:http://music.cnblogs.com/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步