首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于SQL语句,求救解决方案

2011-12-28 
关于SQL语句,求救declare@iintset@i0while@i (selectcount(speak_id)fromweb..bbs_content)begininserti

关于SQL语句,求救
declare   @i   int
set   @i=0
while   @i <(select   count(speak_id)   from   web..bbs_content)
begin

      insert   into   FORUM_DOC(FR_NO,FR_ID,usr)   SELECT   TOP   10   A.SPEAK_ID,A.BBSMOD_ID,A.SPEAKER_ID   From   web..bbs_content   AS   A   where   A.speak_id   not   in
(SELECT   TOP   @i   B.speak_id   FROM   web..bbs_content   AS   B   ORDER   BY   B.speak_id)

      set   @i=@i+1
end

这个时候(SELECT   TOP   @i   B.speak_id   FROM   web..bbs_content   AS   B   ORDER   BY   B.speak_id)
里的变量@i找不到了,为什么呢?

[解决办法]
什么问题没看清除,但用这个应该可以解决问题

原SQL语句改成:
exec ( 'insert into FORUM_DOC(FR_NO,FR_ID,usr) SELECT TOP 10 A.SPEAK_ID,A.BBSMOD_ID,A.SPEAKER_ID From web..bbs_content AS A where A.speak_id not in
(SELECT TOP '+@i+ ' B.speak_id FROM web..bbs_content AS B ORDER BY B.speak_id) ')

热点排行