你好,我想这要用到临时表了!
在存储过程里可以办到这个:
CREATE procedure pr_Article_All
(
)
as
set nocount on
begindeclare @indextable table(id int identity(1,1),nid int) --先建一个临时表insert into @indextable(nid) select ID from BBS_Article --再插入一个选定表到临时表里select from @indextable --这个临时表里的数据就是连续的了end
set nocount off
GO

解决方案 »

  1.   

    多谢syngebb(yiming) 的指点:我查了一下 存储过程里 是可以的 ,但我想直接select语句里实现, 难道 sqlserver里就没有 自加函数吗? 既然 在插入记录时可以自加 ,我查询产生记录集时不能实现吗?
      

  2.   

    好象有点难度,
    用select语句我还没实现过!!!
    还望高人指点!
      

  3.   

    换个方法实现,int i=0;
    你每读取一条记录就将i++;并补充到你的查询后数据中,也可以达到效果吧。
      

  4.   

    SELECT (SELECT COUNT(DISTINCT ID)
              FROM allfile
              WHERE id <= a.ID) AS 序号, ID, allName
    FROM allFile a
    GROUP BY ID, allName
    ORDER BY IDid <= a.ID是从1开始
    id < a.ID 是从0开始