CTE
क्वेरी के लिए केवल एक उपनाम है।
इसे हर बार उपयोग किए जाने पर फिर से चलाया जा सकता है (या नहीं भी)।
CTE
force को ज़बरदस्ती करने का कोई साफ तरीका नहीं है SQL Server
में भौतिकीकरण (जैसे Oracle का /*+ MATERIALIZE */
), और आपको इस तरह की गंदी चालें करनी होंगी:
CTE
केवल एक मूल्यांकन की आवश्यकता वाली योजनाओं में उपयोग किए जाने पर प्रदर्शन में सुधार हो सकता है (जैसे HASH JOIN
, MERGE JOIN
आदि)।
इन परिदृश्यों में, हैश तालिका सीधे CTE
. से बनाई जाएगी , अस्थायी तालिका का उपयोग करते समय CTE
. का मूल्यांकन करने की आवश्यकता होगी , परिणाम को अस्थायी तालिका में खींचकर और एक बार फिर अस्थायी तालिका को पढ़ना।