Mysql 查找因龋齿死亡的患者人数

Mysql 查找因龋齿死亡的患者人数,mysql,Mysql,我被要求找出死于龋齿的病人人数 特别是,我对如何将COUNT()与SELECT子句一起使用感到有些困惑 入院诊断: Adm_ID//入院编号(入院) 诊断ID//诊断ID 入场券: Adm_ID//入院编号(入院) Pat_ID//患者ID 日期/行政//入学日期 出院日期//出院日期 健康\u ID//出院时患者的健康 我的尝试: 首先,根据住院诊断表,我得到了那些因为龋齿而去医院的病人 SELECT * FROM Adm_Diag WHERE Diag_ID = 900 /*900 code

我被要求找出死于龋齿的病人人数

特别是,我对如何将
COUNT()
SELECT
子句一起使用感到有些困惑

入院诊断:

Adm_ID//入院编号(入院)

诊断ID//诊断ID

入场券:

Adm_ID//入院编号(入院)

Pat_ID//患者ID

日期/行政//入学日期

出院日期//出院日期

健康\u ID//出院时患者的健康

我的尝试:

首先,根据住院诊断表,我得到了那些因为龋齿而去医院的病人

SELECT *
FROM Adm_Diag
WHERE Diag_ID = 900 /*900 code for caries
SELECT e1.Adm_ID, Diag_ID, Health_ID
FROM (SELECT *FROM Adm_diag WHERE diag_ID = 900) e2, 
     (SELECT *FROM admission WHERE Health_id=23) e1
WHERE e2.Adm_ID=e1.Adm_ID
然后我找到入院ID,患者出院时的健康状况为“死亡”

SELECT * 
FROM Admission 
WHERE Health_ID = 23 /* 23: code for 'Die'
然后我把这两张表合并在一起,找到了病人死于龋齿的入院ID

SELECT *
FROM Adm_Diag
WHERE Diag_ID = 900 /*900 code for caries
SELECT e1.Adm_ID, Diag_ID, Health_ID
FROM (SELECT *FROM Adm_diag WHERE diag_ID = 900) e2, 
     (SELECT *FROM admission WHERE Health_id=23) e1
WHERE e2.Adm_ID=e1.Adm_ID
但我在“计数”部分遇到了麻烦。我真的不知道如何同时使用count和select子句。我试图将所有内容放入计数(
count(选择e1.Adm\u ID、Diag\u ID、Health\u ID…
)中,但它不起作用

顺便说一句,在我创建数据库时,我发现一名患者因此死亡(:

你能试试吗:

select count(*) 
from Adm_diag ad
inner join admission a
on  ad.Adm_ID = a.Adm_ID
where ad.diag_ID = 900 and a.Health_id=23
你能试试吗

select count(*) 
from Adm_diag ad
inner join admission a
on  ad.Adm_ID = a.Adm_ID
where ad.diag_ID = 900 and a.Health_id=23
您可以将计数(*)与分组依据一起使用

SELECT e1.Adm_ID, e1.Diag_ID, e2.Health_ID, coun(*)
FROM  Adm_diag as a
INNER JOIN admission on e1.Adm_ID = e.Adm_ID
WHERE e1.Diag_ID = 900
AND e2.Health_ID = 23
group by e1.Adm_ID, e1.Diag_ID
您可以将计数(*)与分组依据一起使用

SELECT e1.Adm_ID, e1.Diag_ID, e2.Health_ID, coun(*)
FROM  Adm_diag as a
INNER JOIN admission on e1.Adm_ID = e.Adm_ID
WHERE e1.Diag_ID = 900
AND e2.Health_ID = 23
group by e1.Adm_ID, e1.Diag_ID