Mam kilka sprawozdań tak (że stosowanie z oświadczeniem):SQL Server: Łączenie kilku SELECT z „z” części do unii
WITH valDiff AS (SELECT <ComplexClause1> AS v1 FROM [MyTable] WHERE <OtherClause1>) SELECT SUM(CASE WHEN v1 < @MaxVal THEN v1 ELSE @MaxVal END) FROM valDiff
UNION
WITH valDiff AS (SELECT <ComplexClauseN> AS v1 FROM [MyTable] WHERE <OtherClauseN>) SELECT SUM(CASE WHEN v1 < @MaxVal THEN v1 ELSE @MaxVal END) FROM valDiff
muszę włączać je do Unii, tak aby wynik jest zwracany "za jednym zamachem". Oświadczenia te działają dobrze przez siebie, ale jeśli dodać słowo „związku” między nimi, jak pokazałem powyżej, pojawia się następujący błąd:
Incorrect syntax near the keyword 'UNION'.
Incorrect syntax near the keyword 'with'.
If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon."
Co robię źle?