SQLの質問に問題があります。 私は2つのテーブルを持っています:個人と患者の治療。 個人テーブルには個人情報があり、治療テーブルには治療を受けた個人IDと患者IDがあります。 私は多くの治療法を与えた個人がの異なるの患者を見つける必要があります。 私は次のことを試してみました:SQLでユニークな値を計算する
SELECT ID , First_Name , Last_Name
FROM Personal JOIN Patients_Treatments ON ID = Personal_id
GROUP BY ID , First_Name , Last_Name
HAVING COUNT(*) >= ALL (SELECT COUNT(Personal_id) FROM Patients_Treatments
GROUP BY Personal_id)
問題は、それが最もトリートメント、別の患者に最も治療を与えないものを与えた個人を与えることです。 ありがとうございました!
EDIT:
SELECT Personal.ID,First_Name,Last_Name
FROM Personal,Patients_Treatments
WHERE Personal.id = Patients_Treatments.Personal_id
GROUP BY Personal.ID,First_Name,Last_Name
HAVING COUNT(distinct Patient_ID) >= all(SELECT COUNT(distinct Patient_ID)
FROM [Patients_Treatments] GROUP BY Personal_id)
soooo、mysqlまたはSQL Server? – Lamak
SQL Server – Guy