同时计算多个平均命令

时间:2019-01-29 01:13:42

标签: ms-access ms-access-2010

这是类似文章的后续内容...

我有以下看起来像这样的数据集。我只想为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

2 个答案:

答案 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