如何显示患者预约中的专业人士姓名?
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
我有 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