SQL Server में Hierarchical और Recursive Queries
Jasmin Ludolf
Content Developer
4 भाग होते हैं:
WITH cte_name AS (-- Anchor member initial_queryUNION ALL -- Recursive member recursive_query termination_condition )SELECT * FROM cte_name
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 के डेटा टाइप समान होने चाहिए
फैक्टोरियल निकालना:
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 > 1WITH recursion AS(SELECT 1 AS iterationCounter,1 AS factorialUNION ALL SELECT iterationCounter+1,factorial * (iterationCounter+1) FROM recursionWHERE iterationCounter < 10 )SELECT factorial FROM recursion
3628800
SQL Server में Hierarchical और Recursive Queries