简体   繁体   中英

Multiple joins on the same table

i have the following tables:

Technician
Tech_ID,First_Name,Last_Name

 RT_QUEUE_Delta
 Tech_ID, RT_Complete` (references a `Tech_ID` in `Technician`).

I need to get the data from a row in RT_Queue_Delta where RT_Completed = ?? but in my output I need to have the First_Name and Last_nam e that correlates with Tech_id and RT_Completed .

I can match one but I don't know how to match both. I tried:

select RTTech.First_Name as RT_First_Name,
       RTTech.Last_Name as RT_Last_Name
from Technician as RTTech 
         Join RT_Queue_Delta as RT 
         on RT.RT_Completed = RTTech.Tech_ID

You can join to the Technician table multiple times:

select d.tech_id, t.first_name, t.last_name, 
       d.rt_completed as completed_id, 
       t2.first_name as completed_first_name, 
       t2.last_name as completed_last_name
from RT_QUEUE_Delta d
    join Technician t on d.tech_id = t.tech_id
    join Technician t2 on d.RT_Completed = t2.tech_id

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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