我有一個存儲過程在我的表中查找數據,名爲csScheduleAgents
。當您第一次點擊該頁面時,它會抓取您的用戶ID並檢查該表以獲取信息。它將所有記錄加入員工表。TSQL包含數據,即使爲空
我遇到的問題是,如果A.[empID]
不存在,它無法從B.[]
獲取數據;所以加入失敗。
即使A.[empID]
沒有記錄仍然作爲變量傳遞,我怎麼能使這個聲明工作。
SELECT A.[id],
A.[empID],
A.[shiftPref],
CONVERT (VARCHAR (20), A.[lastUpdated], 101) AS lastUpdated,
B.[firstName],
B.[lastName],
B.[SupEmpID],
B.[DepartmentDesc] + ' ' + B.[SkillSetDesc] as SkillSetDesc,
C.[firstName] + ' ' + C.[lastName] AS supervisor
FROM csScheduleAgents AS A
INNER JOIN
empTable AS B
ON B.[empID] = A.[empID]
INNER JOIN
empTable AS C
ON C.[empID] = B.[SupEmpID]
WHERE A.[empID] = @empID
FOR XML PATH ('details'), TYPE, ELEMENTS, ROOT ('root');
END
如果A.empID不存在,您希望返回哪些數據? –
無論如何,數據都存在於employee表(empTable)中。它只是因爲A. [empID]已存在,它甚至不會從empTable中獲取數據,就像我想要的 – SBB