Zkusili jste před With přidat středník prohlášení? (např. ;With q As )
Některé obecné poznámky:
- Toto musíte spustit v dotazu, nikoli v návrháři. Zdá se, že jste to vyřešili.
- Namísto použití
*vytvořte výčet sloupců . To znamená, že v níže uvedeném příkladu nahraďte Sloupec1, Sloupec2 skutečnými sloupci, kterým chcete předponu v tabulce, odkud pocházejí. - Zadejte
use DatabaseNamev horní části skriptu následuje zalomení řádku a za nímGO, po kterém následuje další zalomení řádku. - Pokud je jediným příkazem před
Withpříkaz jeGOmezi vašímusepříkaz a dotaz, pak není středník nutný, protože se jedná o první příkaz v dávce.
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