[英]INNER JOIN SQL QUERY
下一条sql语句工作正常。 它同时显示Patient_id和serv_name,但我尝试显示Patient_name而不是Patient_id
SELECT C1.patient_id, S.serv_name
FROM
Checkup_Details C
INNER JOIN Services S ON (C.serv_id=S.serv_id),
Checkup C1
WHERE
C1.today = DATE() AND C1.check_id=C.check_id
ORDER BY C.check_id
所以我想如何通过添加此sql语句来做到这一点
INNER JOIN Patient P ON (C1.patient_id=P.patient_id)
但我不知道有多精确。
假设字段Patient_name在Checkup_Details中,则必须输入
SELECT C1.patient_name ...
取而代之
SELECT C1.patient_id ...
只需添加INNER JOIN子句即可获取表Patient的列,并通过P.patient_name更改C1.patient_id。
SELECT P.patient_name, S.serv_name
FROM
Checkup_Details C
INNER JOIN Services S ON (C.serv_id=S.serv_id),
INNER JOIN Patient P ON (C1.patient_id=P.patient_id)
Checkup C1
WHERE
C1.today = DATE() AND C1.check_id=C.check_id
ORDER BY C.check_id
您不应混合使用隐式和显式join
语法。 一个简单的规则:请勿在from
子句中使用逗号:
SELECT C1.patient_id, S.serv_name
FROM Checkup_Details C INNER JOIN
Services S
ON C.serv_id = S.serv_id INNER JOIN
Checkup C1
ON C1.check_id = C.check_id INNER JOIN
Patient P
ON C1.patient_id = P.patient_id
WHERE C1.today = DATE()
ORDER BY C.check_id;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.