DAX JOIN 如果一个值在两个日期之间
DAX JOIN if a value is between two dates
在 Table A 中,我有一个名为“销售日期”的日期字段。在 Table B 中,我有开始日期、结束日期和财政季度。我想要一个新的 Table,销售日期来自 Table A,财政季度来自 Table B。我如何在 DAX 中做到这一点?由于 PowerBI 中的大多数 UI 只允许相等。
如果你想把它作为一个新的 table 你可以这样做:
NewTable = SUMMARIZECOLUMNS(
TableA[SalesDate],
"FiscalQuarter",
CALCULATE(
MAX(TableB[FiscalQuarter]),
TableB[StartDate] <= VALUES(TableA[SalesDate]),
TableB[EndDate] >= VALUES(TableA[SalesDate])))
您也可以将 FiscalQuarter
添加为 TableA
上的计算列:
FiscalQuarter = CALCULATE(
MAX(TableB[FiscalQuarter]),
FILTER(TableB,
TableB[StartDate] <= TableA[SalesDate] &&
TableB[EndDate] >= TableA[SalesDate]))
在 Table A 中,我有一个名为“销售日期”的日期字段。在 Table B 中,我有开始日期、结束日期和财政季度。我想要一个新的 Table,销售日期来自 Table A,财政季度来自 Table B。我如何在 DAX 中做到这一点?由于 PowerBI 中的大多数 UI 只允许相等。
如果你想把它作为一个新的 table 你可以这样做:
NewTable = SUMMARIZECOLUMNS(
TableA[SalesDate],
"FiscalQuarter",
CALCULATE(
MAX(TableB[FiscalQuarter]),
TableB[StartDate] <= VALUES(TableA[SalesDate]),
TableB[EndDate] >= VALUES(TableA[SalesDate])))
您也可以将 FiscalQuarter
添加为 TableA
上的计算列:
FiscalQuarter = CALCULATE(
MAX(TableB[FiscalQuarter]),
FILTER(TableB,
TableB[StartDate] <= TableA[SalesDate] &&
TableB[EndDate] >= TableA[SalesDate]))