Как объединить несколько CTE?

Как вы используете UNIONс несколькими Common Table Expressions?

Я пытаюсь собрать сводные цифры, но где бы я ни ставил ;, всегда получаю ошибку

SELECT  COUNT(*)
FROM    dbo.Decision_Data
UNION
SELECT  COUNT(DISTINCT Client_No)
FROM    dbo.Decision_Data
UNION
WITH    [Clients]
          AS ( SELECT   Client_No
               FROM     dbo.Decision_Data
               GROUP BY Client_No
               HAVING   COUNT(*) = 1
             )
    SELECT  COUNT(*) AS [Clients Single Record CTE]
    FROM    Clients;

. ОБНОВЛЕНИЕ:Я понимаю, что в приведенном выше примере я могу переместить одиночное CTE в начало, но у меня есть ряд CTE, которые я хотел быUNION

47
задан brett rogers 23 June 2016 в 23:02
поделиться