代码之家  ›  专栏  ›  技术社区  ›  sikender

在SQL Server 2005中创建递归函数

  •  2
  • sikender  · 技术社区  · 16 年前
    cat_id  prod_name parent_cat_id
    ------ ---------- ------------
    1   prod_1     2
    2   prod_2     5
    3   prod_3     1
    4   prod_4     3
    5   prod_5     7
    6   prod_6     5
    

    ANS IS LIKE :::
    
    1   prod_1     2
    2   prod_2     5
    5   prod_5     7
    
    1 回复  |  直到 16 年前
        1
  •  2
  •   Quassnoi    16 年前
    WITH    rows AS
            (
            SELECT  cat_id, prod_name, parent_cat_id
            FROM    mytable
            WHERE   cat_id = 1
            UNION ALL
            SELECT  m.cat_id, m.prod_name, m.parent_cat_id
            FROM    mytable m
            JOIN    rows r
            ON      r.parent_cat_id = m.cat_id
            )
    SELECT  *
    FROM    rows