嗨,我希望得到帮助来解决一个非常烦人的问题。 我一直在思考这个问题,但我真的很难将这个 SQL 查询转换为其等效的关系代数查询。
查询:
SELECT
staff.STF_FirstNames AS `Doctor First Name`,
staff.STF_LastName AS `Doctor Last Name`,
patient.PAT_FirstNames AS `Patient First Name`,
patient.PAT_LastName AS `Patient Last Name`,
patient_makes_appointment.APP_DateTime AS `Appointment Time`
FROM staff
JOIN doctor ON staff.STF_ID = doctor.STF_ID
JOIN patient ON doctor.DOC_ID = patient.DOC_ID
JOIN patient_makes_appointment ON patient.PAT_ID = patient_makes_appointment.PAT_ID
我对关系代数的基础知识很了解,但我很难了解如何用条件表示多个连接。
非常感谢任何建议,谢谢:)
最佳答案
也许你需要一些看起来像:
SELECT
staff.STF_FirstNames AS `Doctor First Name`,
staff.STF_LastName AS `Doctor Last Name`,
patient.PAT_FirstNames AS `Patient First Name`,
patient.PAT_LastName AS `Patient Last Name`,
patient_makes_appointment.APP_DateTime AS `Appointment Time`
FROM staff, doctor, patient, patient_makes_appointment
WHERE staff.STF_ID = doctor.STF_ID
AND doctor.DOC_ID = patient.DOC_ID
AND patient.PAT_ID = patient_makes_appointment.PAT_ID
关于mysql - 如何将 JOIN SQL 查询转换为关系代数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28277307/