Recursive CTE परिचय

SQL Server में Hierarchical और Recursive Queries

Jasmin Ludolf

Content Developer

Recursive CTE

4 भाग होते हैं:

WITH cte_name AS (

-- Anchor member initial_query
UNION ALL -- Recursive member recursive_query termination_condition )
SELECT * FROM cte_name
SQL Server में Hierarchical और Recursive Queries

Recursive CTE उपयोग गाइड

  • 100 से अधिक recursion स्टेप्स के लिए, recursion स्टेप्स बढ़ाएँ:

    • OPTION(MAXRECURSION 32767)
  • ये SQL स्टेटमेंट्स अनुमत नहीं हैं: GROUP BY, HAVING, LEFT JOIN, RIGHT JOIN, OUTER JOIN, SELECT DISTINCT, Subqueries, TOP

  • Anchor और recursive member के कॉलमों की संख्या समान होनी चाहिए

  • Anchor और recursive member के डेटा टाइप समान होने चाहिए

SQL Server में Hierarchical और Recursive Queries

Recursive उदाहरण

फैक्टोरियल निकालना:

n का factorial उन सभी धनात्मक पूर्णांकों के गुणनफल के बराबर है जो n से कम या बराबर हों:

3! = 1 x 2 x 3 = 6

Factorial n! को recursive रूप में ऐसे परिभाषित करते हैं:

  • 0! = 1 for iteration = 1
  • (n+1)! = n! * (iteration+1) for iteration > 1
SQL Server में Hierarchical और Recursive Queries

कोड में recursive उदाहरण

WITH recursion AS

(SELECT 1 AS iterationCounter,1 AS factorial
UNION ALL SELECT iterationCounter+1,factorial * (iterationCounter+1) FROM recursion
WHERE iterationCounter < 10 )
SELECT factorial FROM recursion
3628800
SQL Server में Hierarchical और Recursive Queries

अभ्यास करते हैं!

SQL Server में Hierarchical और Recursive Queries

Preparing Video For Download...