sql里面的递归怎么写?
版主我实在是找不到sql分类先发这里了,不好意思

解决方案 »

  1.   

    写自定义涵数,先把这个涵数定义出来,比如:我写一个自动相减的递归
    create function fdk(@a int)
    returns  int
    as
    begin
     declare @i int
     set @i = @a-1
    return @i
    end
    然后再用alter进行修改一下
    alter function fdk(@a int)
    returns  int
    as
    begin
     declare @i int
     set @i = @a-1
             if(@i<>0)
    set @i = dbo.fdk(@i)
    return @i
    end
    分为两步完成
      

  2.   

    SQL中的递归就是指CTE。
    你去baidu一下吧,应该有很多。
      

  3.   

    去看了一下好像SQL2000版 不支持with的写法
      

  4.   

    http://blog.csdn.net/davinciyxw/article/details/8113040
    最后部分
      

  5.   

    写个最简单的。从1加到100;with tb as(
    select 1 as id 
    union all
    select id + 1 as id from tb where tb.id <100
    )
    select * from tb
    option(MAXRECURSION 200)