如何显示患者预约中的专业人士姓名?

how can i display the name of a professional from a patient's appointment?

我有 this 四张表:

一个给用户,另一个给专业人士,另一个给病人,另一个给预约。我想从病人的预约中得到专家的名字。

我试试这个:

SELECT appointments.date, appointments.start_time, appointments.indication, professionals.medical_box 
FROM appointments 
INNER JOIN patients ON appointments.id_patient = patients.id 
INNER JOIN users ON users.id = patients.id_user 
INNER JOIN professionals ON professionals.id = appointments.id_professional 
WHERE users.id = 14 
ORDER BY appointments.date DESC, appointments.start_time ASC

我得到的都是正确的,但是当我尝试显示 users.name 时,我得到的名字是病人的名字,不是专业的名字,我想要那个病人预约的专业名字。 sql 查询是什么?

看来要获取您需要的专业名称,还要将用户 table 加入专业。

为第二次加入用户添加一个别名 table 并在显示您的字段时引用它。

SELECT appointments.date, appointments.start_time, appointments.indication, professionals.medical_box, usersProf .name
FROM appointments 
INNER JOIN patients ON appointments.id_patient = patients.id 
INNER JOIN users ON users.id = patients.id_user 
INNER JOIN professionals ON professionals.id = appointments.id_professional 
INNER JOIN users as usersProf ON usersProf .id = professionals.id_user 
WHERE users.id = 14 
ORDER BY appointments.date DESC, appointments.start_time ASC