这是类似文章的后续内容...
我有以下看起来像这样的数据集。我只想为ESITwoToFive变量选择一个具有“ 1”的变量,然后为每个唯一的日期计算AVG
total_ED_LOS。我也想对ESIFourFive变量做同样的事情。
ID CheckinDate ESITwoToFive ESIFourFive Total_ED_Los
1 Feb 7 1 0 23
2 Feb 7 0 1 23
3 Feb 7 1 0 28
4 Feb 8 1 0 43
5 Feb 8 1 0 83
6 Feb 8 0 1 29
7 Feb 8 0 1 32
8 Feb 9 1 0 93
9 Feb 9 1 0 77
10 Feb 9 0 1 33
为我提供了以下代码,用于计算有效的ESITwoToFive变量。
select t.checkin_date, avg(t.total_ed_los) as [Avg LOS]
from [Fast Track Quality Research ESI Levels] t
where t.esitwotofive = 1
group by t.checkin_date
所需的输出:
Checkindate Avg LOS for ESITwoToFive Avg LOS for ESIFourFive
Feb 7 24 23
Feb 8 54 30
Feb 9 86 56
答案 0 :(得分:2)
有条件的可能是最干净的解决方案,但只是提供了无条件的替代方案:
position: sticky
答案 1 :(得分:1)
尝试使用IIf()条件表达式:
SELECT t.checkin_date, Avg(IIf(ESITwoToFive=1,t.total_ed_los,Null)) AS [AvgLOStwo],
Avg(IIf(ESIFourFive=1,t.total_ed_los,Null)) as [AvgLOSfour]
FROM [Fast Track Quality Research ESI Levels] t
GROUP BY t.checkin_date