我試圖使用存儲在臨時結果集(源代碼中)的數據來填充另一個表與SQL Server 2012.當執行下面的代碼時,我得到錯誤「多部分標識符」SOURCE.JnlDetoaId「無法綁定」。無法綁定多部分標識符「字段
SELECT Journaldet.*, Agency.ID_Agency INTO SOURCE
FROM Journaldet
inner join Agency
ON Agency.Agency_ID = Journaldet.AgenceId
IF ((SELECT COUNT(Journal.Journal_ID) FROM dbo.Journal, SOURCE WHERE Journal_ID = SOURCE.JournalId)=0)
INSERT INTO Discarded.JournalDet(JournalDet_ID, Amount, Sensoa, DetoaId, ID_Agency, JournalId, Appli_Source, ReasonDiscarded, DateDiscarded)
VALUES (SOURCE.JnlDetoaId, SOURCE.Amount, SOURCE.Sensoa, SOURCE.DetoaId, SOURCE.ID_Agency, JournalId, 'GameApps','Member not yet inserted', GETDATE());
我讀了一些關於這裏的線程,但沒有看到如何將它們應用到我的情況。 請幫忙嗎?
嘗試使用別名。如:從dbo.Journal作爲j,來源爲s。 – user2919277
我試過了,但在「SOURCE.JnlDetoaId」的地方發生了與「s.JnlDetoaId」相同的錯誤(導致SOURCE被別名爲s)。我想要的是從結果集中的第一個SELECT獲取數據,因爲它是一個臨時表,參數或其他事物 - 這樣我就可以在進一步的表達式中使用該結果集,如第一個SELECT之後的IF。 –
源是你的另一個表名?你有定義這張表嗎? – user2919277