我有这张表,其中包含来自不同医院的一组医疗条件/程序的数据。这是它的一个片段:
我正在尝试创建一个包含每 13 个
procedure/condition
和他们的 MAX
和 min
risk_adjusted_mortality_rate
以及每个最大和最小速率相应的 hospital_full_name
的列表:
这就是我想要实现的目标:
procedure/condition , max_rar, max_hospital_full_name, min_rar, min_hospital_full_name
我已经尝试通过在
MAX
上对它们进行分组来计算min
和procedure/condition
并将其用作与当前表的连接以拉出max_hospital_full_name
和min_hospital_full_name
:
CREATE VIEW view1 as
select [procedure/condition] MAX(risk_adjusted_mortality_rate) as max_rar, MIN(risk_adjusted_mortality_rate) as min_rar
from imi..imi_2020
group by [procedure/condition]
select i20.[procedure/condition], hospital_full_name as max_hospital_full_name, county, view1.max_rar
from imi..imi_2020 i20
join view1
on i20.risk_adjusted_mortality_rate= view1.max_rar
AND i20.[procedure/condition]=view1.[procedure/condition]
结果:
这给了我正确的结果,我计划做同样的事情,让所有 13
min_rar
对应于 procedure/condition]
的医院。但是,我希望在一张桌子上而不是两张桌子上得到结果。谁能提出更好的方法?