csScheduleAgents
이라는 테이블의 데이터를 찾고있는 저장 프로 시저가 있습니다. 페이지를 처음 조회하면 사용자 ID를 획득하고 해당 테이블에서 정보를 확인합니다. 모든 레코드가있는 직원 테이블에 참여 중입니다.null이더라도 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] doenst가 존재하기 때문에, empTable에서 데이터를 가져 오는 것조차 원하지 않습니다. – SBB