क्या आपने अपने With . के सामने अर्धविराम लगाने का प्रयास किया है? बयान? (उदा. ;With q As )
कुछ सामान्य नोट:
- आपको इसे डिज़ाइनर नहीं क्वेरी में चलाना चाहिए। ऐसा लगता है कि आपने इसे ठीक कर दिया है।
*का उपयोग करने के बजाय स्तंभों की गणना करें . यानी, नीचे दिए गए उदाहरण में, Col1, Col2 को उन वास्तविक स्तंभों से बदलें जिन्हें आप उस तालिका से पहले रखना चाहते हैं जहां से वे आए थे।use DatabaseNameडालें आपकी स्क्रिप्ट के शीर्ष पर एक पंक्ति विराम के बाद, उसके बादGO, उसके बाद एक और लाइन-ब्रेक।- यदि
Withसे पहले का एकमात्र कथन है कथनGOहै आपकेuse. के बीच कथन और क्वेरी, तो कोई अर्धविराम आवश्यक नहीं है क्योंकि यह बैच में पहला कथन है।
use DatabaseName
GO
WITH q AS
(
SELECT TableName.Col1, TableName.Col2,...
, ROW_NUMBER() OVER (PARTITION BY dbo.[1_MAIN - Contacts].Contact_ID
ORDER BY dbo.[1_MAIN - Contacts].Contact_ID ) AS rn
FROM dbo.[1_MAIN - Contacts]
INNER JOIN dbo.Referral
ON dbo.[1_MAIN - Contacts].Contact_ID = dbo.Referral.Referral_ID
INNER JOIN dbo.prov_training_records
ON dbo.[1_MAIN - Contacts].Contact_ID = dbo.prov_training_records.Contact_ID
LEFT OUTER JOIN dbo.Resource_Center
ON dbo.[1_MAIN - Contacts].Contact_ID = dbo.Resource_Center.Contact_ID
FULL OUTER JOIN dbo.Providers
ON dbo.[1_MAIN - Contacts].Contact_ID = dbo.Providers.Contact_ID
)
SELECT *
FROM q