Ошибка при использовании SQL с общим выражением таблицы (CTE) - PullRequest
0 голосов
/ 18 июня 2019

Я новичок в SQL. Я пытаюсь использовать SQL CTE, но получаю сообщение об ошибке:

Msg 102, Level 15, State 1, Line 16
Incorrect syntax near ')'.

Я использую ms-sql и читаю следующий блог для руководства.

Это мой запрос

WITH parents(BranchCode, SOLD,BANKERSCOUNT, [TARGET]) AS
(
    SELECT          MS.ParentBranchCode, 
                    SUM(NP.SOLD)  SOLD, 
                    SUM(NP.BANKERSCOUNT)  BANKERSCOUNT, 
                    SUM(NP.[TARGET]) [TARGET]
    FROM            NEDLLIFEPARTICIPATION NP
    INNER JOIN      m_Structure MS
    ON              MS.BranchCode = NP.BranchCode
    GROUP BY        MS.ParentBranchCode, NP.Year, NP.MONTH, NP.ProductId
)

1 Ответ

4 голосов
/ 18 июня 2019

Это дает вам ошибку?Если нет, то, возможно, вы просто не включили оператор выбора после вашего общего табличного выражения.Это объяснило бы, почему ваша ошибка показывает проблему с закрывающей скобкой, она просто говорит вам (если мое предположение верно), что ваш CTE не используется в запросе (и, следовательно, не будет компилироваться).

WITH parents(BranchCode, SOLD,BANKERSCOUNT, [TARGET]) AS   
(
    SELECT          MS.ParentBranchCode, 
                SUM(NP.SOLD)  SOLD, 
                SUM(NP.BANKERSCOUNT)  BANKERSCOUNT, 
                SUM(NP.[TARGET]) [TARGET]
    FROM            NEDLLIFEPARTICIPATION NP
    INNER JOIN      m_Structure MS
    ON              MS.BranchCode = NP.BranchCode
    GROUP BY        MS.ParentBranchCode, NP.Year, NP.MONTH, NP.ProductId
)

select * from parents;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...