2
現在我收到'無效的對象名稱qryTI_3'的錯誤。當我嘗試執行整個過程時,我只會遇到此錯誤,但我仍然可以保存該過程。我已驗證所有字段確實存在於引用的表中。這個查詢有什麼問題?無效的對象名稱 - SQL Server 2008
DECLARE @cols AS NVARCHAR(MAX),
@query AS NVARCHAR(MAX);
WITH qryTI_1 AS
(
SELECT tblTSF.fldFPK, tblTSF.fldPK, tblTSF.fldCI, tblTSF.fldNI
FROM tblTSF
WHERE (((tblTSF.fldMN)<>-254))
),
qryTI_2 AS
(
SELECT tblTSF.fldFPK, tblTSF.fldPK, tblAL.fldLN AS fldCI, 0 AS fldNI
FROM tblAL, tblTSF
GROUP BY tblTSF.fldFPK, tblTSF.fldPK, tblAllLevels.fldLN
HAVING (((tblAL.fldLN)<>0 And (tblAL.fldLN)<>6))
),
qryTI_3 AS
(
SELECT * FROM qryTI_1 UNION SELECT * FROM qryTI_2
)
select @cols = STUFF((SELECT distinct ',' + QUOTENAME(fldCI)
from qryTI_3
FOR XML PATH(''), TYPE
).value('.', 'NVARCHAR(MAX)')
,1,1,'')
set @query = 'SELECT fldPK, fldFPK, ' + @cols + '
FROM
(
SELECT fldPK
,fldFPK
,fldNI
,fldCI
FROM qryTI_3
) as x
PIVOT
(
Sum(fldNI) FOR fldCI IN (' + @cols + ')
) as p '
execute sp_executesql @query