0
我是新來的存儲過程,我得到一個錯誤:存儲過程循環錯誤
Subquery returned more than 1 value. This is not permitted when the subquery follows
E_R_Main
是頭表,E_R_Detail
是詳細信息表。兩個表都使用R_ID
加入。
我的預期輸出:
代碼:
DECLARE @LALA NVARCHAR(10);
DECLARE @LALA2 NVARCHAR(10);
CREATE TABLE #TEMP
(
EMP_NAME nvarchar(256),
Total_Pending nvarchar(256),
Reschedule_Task nvarchar(256),
New_Task nvarchar(256)
)
--select * from #TEMP
INSERT INTO #TEMP(EMP_NAME, Total_Pending)
SELECT DISTINCT(PIC), COUNT(PIC) AS COUNTTT
FROM E_R_DetailT A
INNER JOIN E_R_MainT b ON a.R_ID = b.R_ID
WHERE PIC IS NOT NULL
GROUP BY T_EMP_ID
SET @LALA = (SELECT COUNT(B.R_ID) AS TEXSST
FROM E_R_MainT A
INNER JOIN E_R_DetailT B ON A.R_ID = B.R_ID
WHERE (b.R_Y = '[Redo]' OR R_Y_N = '[r]')
AND (STAT = 'S_5' OR STAT = 'S_3')
GROUP BY T_EMP_ID)
SET @LALA2 = (SELECT DISTINCT(B.T_EMP_ID)
FROM E_R_MainT A
INNER JOIN E_R_DetailT B ON A.R_ID = B.R_ID
WHERE (b.R_Y = '[Redo]' OR R_Y_N = '[r]')
AND (STAT = 'S_5' OR STAT = 'S_3')
GROUP BY T_EMP_ID)
UPDATE #TEMP
SET Reschedule_Task = @LALA
WHERE #TEMP.EMP_NAME = @LALA2
--SELECT * FROM #TEMP
SELECT
B.Name, a.Total_Pending, New_Task,
CASE
WHEN Reschedule_Task IS NULL
THEN 0
ELSE Reschedule_Task
END AS User_Feedback
FROM
#TEMP A
INNER JOIN
UserInfo B ON A.EMP_NAME = B.EmployeeNo
DROP TABLE #TEMP
你有這個問題既'@ LALA'和'@ LALA2'。你的代碼對於你的任務太複雜了。 –
其實我真正的桌子是複雜的。我發佈的圖片,我使用excel做到了,使它簡單.. – KyLim