我正在创建一个关于医疗实践的测试数据库。这是我的图表的图片以供参考。 ER diagram
所以基本上我的问题是如何正确地进行连接。我试图给出一个从给定练习中看到的患者列表(例如练习ID 1),但我也想展示练习名称和细节。我还想展示一份患者和gp工作或参加过这种练习的清单(请记住,我只用10行测试数据填充了我的表格)
我到目前为止
select patient.firstname, patient.surname
from patient
Join appointment on patient.patientid = appointment.patientid
where appointment.practiceid IN (1)
ORDER BY firstname;
`我如何也包括与此练习相关的练习细节和gp细节。令我困惑的是,如果他们不是来自患者表,我将如何添加更多选择语句。任何帮助都会很棒!
答案 0 :(得分:0)
我已经包含了如何在查询中显示Practice_Name
,如果您对提到的其他每个查询都使用相同的连接逻辑方法,那么您将完成它。我认为这是一种更好的学习方式,而不是在一个答案中解决上述每个问题。
SELECT PR.Practice_Name, P.firstname, P.surname
FROM patient AS P
INNER JOIN appointment AS A ON P.patientid = A.patientid
INNER JOIN Practice AS PR ON A.practiceid = PR.practiceid
WHERE A.practiceid IN (1)
ORDER BY P.firstname;
答案 1 :(得分:0)
您只需添加更多sum()
条款:
int
答案 2 :(得分:0)
我喜欢别名我的SQL语句。节省打字。
<cfset form.password = Hash(Form.password, "SHA") >
<!--- Insert the new record --->
<cfinsert datasource="mydatasource" tablename="Users">
<h1>User Added</h1>
<cfoutput> You have added #Form.name# #Form.email# to the testdb database.
</cfoutput>