我正在尝试按部门在我的查询中获取所有资源的 ExternalID TeamManager2。 我不认为这是不可能的,但我被卡住了。 提前致谢
查询:
SELECT
T3.DeptGenius,
T1.ResourceType,
T1.ExternalID,
T1.OfficeLocation,
'' as 'ExternalIDTeamManager2'
FROM
GEN_Resources T1
INNER JOIN Ref_Resources T2 ON T1.ExternalID = T2.Unic_ID
INNER JOIN Ref_BU T3 ON T2.BU_Unid = T3.UNID
WHERE
T1.Active = 'YES'
查询的实际结果:
预期结果:
逻辑是每个部门只有一个 Manager2 (deptGenius)。
部门名单如下: SOU、HR、FICO、CMU
ExternalID 必须是部门的一部分,并且有一个资源类型。
如果其ResourceType与Manager2不同,我希望Team Manager 2的ExternalID列显示其DeptGenius的Manager2的ExternalID值。
这对你有意义吗?
答案 0 :(得分:1)
如果我理解正确,这就是你需要的:
SELECT
T3.DeptGenius,
T1.ResourceType,
T1.ExternalID,
T1.OfficeLocation,
m2.ExternalID as 'ExternalIDTeamManager2'
FROM
GEN_Resources T1
INNER JOIN Ref_Resources T2 ON T1.ExternalID = T2.Unic_ID
INNER JOIN Ref_BU T3 ON T2.BU_Unid = T3.UNID
LEFT JOIN FEN_Resources m2
ON m2.resourcetype like 'Manager 2%'
AND T1.resourcetype not like 'Manager 2%'
INNER JOIN Ref_Resources m2_2 ON m2.ExternalID = m2_2.Unic_ID
INNER JOIN Ref_BU m2_3
ON m2_2.BU_Unid = m2_3.UNID
AND T3.DeptGenius = m2_3.DeptGenius
WHERE
T1.Active = 'YES'