我是SQL新手。我正在尝试使用SQL CTE,但始终收到错误消息:
Msg 102, Level 15, State 1, Line 16
Incorrect syntax near ')'.
我正在使用ms-sql并阅读以下blog作为指南。
这是我的查询
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
)
答案 0 :(得分:4)
这是否给您一个错误?如果不是,则可能是您只是在公用表表达式之后未包含select语句。这可以解释您的错误为什么显示右括号的问题,它只是告诉您(如果我的假设正确),您的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;