2015-12-08 78 views
0

我有兩個表:SQL表中選擇

  • Patients,我已經patient_ID作爲主鍵和其他細節。

  • Patients_Treatments其中我有來自患者的patient_ID作爲外鍵,treatment_code和其他列。

我要求查找具有相同treatment_code的病人,其ID爲999

所有患者的治療碼我坐在兩天試圖找到一個解決方案,我只是」設法想到一些事情。看起來很簡單,但我找不到解決方案。謝謝!

例子:

enter image description here

預期的輸出是細節(詳細意味着姓,名,患者ID):塔爾沙洛姆丹Shabtay埃拉德梁詠琪

+0

請解釋*常規SQL *是什麼。這是SQL Server嗎?甲骨文?還有別的嗎? – Siyual

+0

你可以添加樣本表數據和預期的結果到你的問題?向我們展示您當前的查詢嘗試,並告訴我們它有什麼問題? (學校派遣?) – jarlh

+0

請張貼一些樣本數據,然後只有我們可以給你的解決方案,您可以在您的要求執行 – mohan111

回答

0

如果您正在尋找共享Treatment_Code屬於Patient_Id: 999的患者的Treatment_CodePatient信息,這應該爲您提供以下結果:

Select T.Treatment_Code, P.First_Name, P.Last_Name, P.Patient_Id 
From Patients_Treatments T 
Join Patients   P On P.Patient_Id = T.Patient_Id 
Where T.Patient_Id In 
(
    Select T1.Patient_Id 
    From Patients_Treatments T 
    Join Patients_Treatments T1 On T1.Treatment_Code = T.Treatment_Code 
            And T1.Patient_ID <> T.Patient_Id 
    Where T.Patient_Id = 999 
)