SQL Server - 显示客户经理和高级经理

时间:2017-05-02 12:25:11

标签: sql sql-server

我有一个包含我们客户数据的表和另一个包含员工数据的表。

我如何获得以下查询以显示老年人姓名而不是他的ID?

我正在使用以下查询。

SELECT Client.ID, ClientData.DueDate, Staff.Names, ClientData.Senior FROM Client
Join ClientData ON ClientData.ClientName = Client.ID
Join Staff ON Client.Manager = Staff.ID

目前,这会导出以下内容

Client Code - 1234
Due Date - 12/04/19
Staff Name - James Rack
Senior Name - 685

如何让它显示高级名称而不是685?

1 个答案:

答案 0 :(得分:0)

假设大四的信息也在Staff表中:

SELECT
    Client.ID
  , ClientData.DueDate
  , Staff.Names
  , ClientData.Senior 
  , Senior.Names as SeniorName
FROM Client
  inner Join ClientData 
    ON ClientData.ClientName = Client.ID
  inner Join Staff 
    ON Client.Manager = Staff.ID
  left join Staff as Senior
    on ClientData.Senior = Senior.Id

left join使用Senior可以为空。