在SQL中使用多个内部联接
当运行下面的查询时,我得到一个错误 查询表达式中出现语法错误(缺少运算符) 'diagnosis.Patient_No='Patient_No-INNER-JOIN-disease ON 疾病。疾病\代码=诊断。疾病\代码'在SQL中使用多个内部联接,sql,Sql,当运行下面的查询时,我得到一个错误 查询表达式中出现语法错误(缺少运算符) 'diagnosis.Patient_No='Patient_No-INNER-JOIN-disease ON 疾病。疾病\代码=诊断。疾病\代码' 我确认疾病代码同时存在于疾病表和诊断表中,并且一切都应该正常工作?不确定在此联接期间是否需要将这些疾病代码添加到select语句中?我尝试将它们添加到select语句中,但这似乎对我也不起作用。您没有为第一个jo中的第二个“患者”列指定表是的,应该是 INNER JOIN
我确认疾病代码同时存在于疾病表和诊断表中,并且一切都应该正常工作?不确定在此联接期间是否需要将这些疾病代码添加到select语句中?我尝试将它们添加到select语句中,但这似乎对我也不起作用。您没有为第一个jo中的第二个“患者”列指定表是的,应该是
INNER JOIN Diagnosis ON Diagnosis.Patient_No = Patient.Patient_No
您还从两个表中选择了未加入的列-药物和处方。但是,这会给您一个不同的错误,即“无法绑定多部分标识符'medicing.medicing_Desc'
您遇到的具体错误听起来像是我提到的第一个问题。这里有一个正在工作的SQL过滤器,省略了药物/处方表
看起来您的FROM语句中没有联接药物表和处方表。还为其他两个表添加
内部联接
INNER JOIN Medication ON Medication.<> = Patient.<>
INNER JOIN Prescription ON Prescription.<> = Patient.<>
内部加入药物治疗。=患者。
在处方上加入内部处方。=患者。
您不能仍然收到相同的错误…现在发生了什么?
试试下面的方法
Select p.Last_Name LastName,
p.First_Name FirstName,
p.Gender Gender, p.Age Age,
i.Illness_Desc illness,
m.Medication_Desc Medication,
s.Dosage Dosage
From Patient p
Join Diagnosis d On d.Patient_No = p.Patient_No
Join Illness i On i.Illness_Code = d.Illness_Code
Join Prescription s On s.Patient_No = p.Patient_No
Join Medication m On m.Medication_code = p.Medication_code
我把它改为Patient.Patient\u No,它没有什么区别。严重地被难住了。我更新了上面的代码,以反映添加了所有内部联接。仍然不能正常工作。我是否使用了联接错误?这是一个更新的fiddle。它有一些空表,有你的确切SQL。没有返回数据,但它会执行,所以我认为问题在于他在别处-
INNER JOIN Medication ON Medication.<> = Patient.<>
INNER JOIN Prescription ON Prescription.<> = Patient.<>
Select p.Last_Name LastName,
p.First_Name FirstName,
p.Gender Gender, p.Age Age,
i.Illness_Desc illness,
m.Medication_Desc Medication,
s.Dosage Dosage
From Patient p
Join Diagnosis d On d.Patient_No = p.Patient_No
Join Illness i On i.Illness_Code = d.Illness_Code
Join Prescription s On s.Patient_No = p.Patient_No
Join Medication m On m.Medication_code = p.Medication_code