如何计算 DAX 中的每日人口并能够按列对其进行切片

How to calculate daily population in DAX AND be able to slice it by columns

更新问题: 我正在尝试使用患者的预约日期(开始日期)和他们的出院日期来计算我们中心在任何给定日期的每日患者人数——使用 DAX 和 Power Pivot。我计划在 PowerBI 中使用它。

我正在使用两个 table:1) 一个主 table 患者数据包含预订日期、发布日期、性别、提供者和种族的列,以及 2) 一个日期table(日历)并在两个 table 之间建立了关系。日期 table 是日期维度。

根据针对我最初问题的建议,我使用以下公式在日历 table 中创建了一个计算列。

PatientCount :=
SUMX (
    Patients,
    IF (
        Patients[Booking Date] <= 'Calendar'[Date]
            && Patients[Release Date] >= 'Calendar'[Date],
        1,
        0
    )
)

然后我创建了一个聚合度量来计算平均每日人口。这行得通;但是,使用这种方法我无法弄清楚如何按患者 table 列(例如性别、提供者、种族)对其进行切片,因为计算出的列在日历 table.

基于此测试数据:

和一个与 'Patients'[Adm] 具有 1:* 关系的日历 table,您可以编写以下度量:

Active Patients = 
var currentDate = MAX('Calendar'[Date])
return 
MAXX(
    DISTINCT('Calendar');
    CALCULATE(
        COUNTROWS('Patients');
        ALLEXCEPT(Patients; Patients[Gen]); //Add all columns you will slice on
        Patients[Adm] <= currentDate;
        Patients[Rel] >= currentDate
    )+0
)

你可以制作这个table:

也可以按性别分割: