繁体   English   中英

SQL Server比较两行以标识ID

[英]SQL Server Compare two rows to identify ID

这是我想要做的。 我有一列数据是每个人的ID。 我还有第二列数据,它是主管的ID。 我还有第三列数据,用于将ID标识为教职员工或教职员工。

我需要将Supervisor列与ID列进行比较。 找到主管的ID后,我需要在单独的列中将该行标识为教职主管。 如果该ID不在主管列中,则仅需要根据第三列将其标记为职员或教职员工。

因此,我拥有的三列是ID,Supervisor ID和Class Type。

任何帮助,将不胜感激。

这是我目前拥有的代码

select distinct ODS_PERSON.ID "Cient_ID",
       ODS_PERSON.LAST_NAME "Last_Name",
       CASE
       WHEN H17_PERSON.NICKNAME  is not null
       THEN H17_PERSON.NICKNAME
       ELSE ODS_PERSON.FIRST_NAME
       END "First_Name",
       H17_PERSON.H17_PER_USERNAME + '@highpoint.edu' "Email",
       CASE
       WHEN ODS_HRPER.HRP_EFFECT_TERM_DATE  is null
       THEN '1'
       ELSE '0'
       END "User_Status",
       CASE
       WHEN SPT_POSITION.POS_CLASS = 'FACL' AND (ODS_PERSON.ID = SPT_PERPOS.PERPOS_SUPERVISOR_HRP_ID)
       THEN 'FACSUP'
       ELSE 'NOPE'
       END "Employee_Type",
       SPT_PERPOS.PERPOS_SUPERVISOR_HRP_ID "Manager",
       SPT_POSITION.DEPARTMENT_DESC "Department",
       SPT_PERPOS.PERPOS_POS_SHORT_TITLE "Position_Title",
       SPT_POSITION.POS_CLASS "Position_Class"
  from ( ( ( ( ( SPT_PERPOSWG SPT_PERPOSWG left join ODS_HRPER ODS_HRPER on SPT_PERPOSWG.PPWG_HRP_ID = ODS_HRPER.HRPER_ID ) left join SPT_PERPOS SPT_PERPOS on SPT_PERPOSWG.PPWG_HRP_ID = SPT_PERPOS.PERPOS_HRP_ID ) left join SPT_PERSTAT SPT_PERSTAT on SPT_PERPOSWG.PPWG_HRP_ID = SPT_PERSTAT.PERSTAT_HRP_ID ) left join ODS_PERSON ODS_PERSON on SPT_PERPOSWG.PPWG_HRP_ID = ODS_PERSON.ID ) left join SPT_POSITION SPT_POSITION on SPT_PERPOS.PERPOS_POSITION_ID = SPT_POSITION.POSITION_ID ) left join H17_PERSON H17_PERSON on SPT_PERPOSWG.PPWG_HRP_ID = H17_PERSON.ID
 where ODS_HRPER.HRP_EFFECT_TERM_DATE is null
       and SPT_PERPOS.PERPOS_END_DATE is null
 order by ODS_PERSON.ID
SELECT ID, Supervisor_ID, Class_Type,
CASE
WHEN SuperVisor_ID is null and Class_Type is not null THEN Class_Type
WHEN (SuperVisor_ID = ID or SuperVisor_ID is not null) THEN 'Supervisor'
END
from tableID

不知道这是您要找的东西。 将来,了解包含多少个表以及是否可以直接比较每列中的数据类型或是否必须转换数据类型将很有帮助。

您可能还想输入是否需要联接条件才能获取信息以及表将联接在哪些列上。

希望这可以帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM