DATESBETWEEN
手記
この関数は、意味のない結果を返す可能性があるため、視覚的な計算
指定した開始日で始まる日付の列を contains するテーブルを返 dateand、指定した終了 dateまで続行します。
この関数は、CALCULATE 関数に filter として渡す場合に適しています。 これを使用して、カスタム daterangeによって式を filter します。
手記
日、月、四半期、or 年などの標準的な date 間隔を使用する If は、より適した DATESINPERIOD 関数を使用することをお勧めします。
構文
DATESBETWEEN(<Dates>, <StartDate>, <EndDate>)
パラメーター
用語 | 定義 |
---|---|
Dates |
date 列。 |
StartDate |
date 式。 |
EndDate |
date 式。 |
value を返す
date valuesの 1 つの列を含むテーブル。
備考
最も一般的なユース ケースでは、
dates
はマークされた date テーブルの date 列への参照です。If
StartDate
が BLANKされている場合、StartDate
はdates
列の earliestvalue になります。If
EndDate
が BLANKされている場合、EndDate
はdates
列の最新の value になります。StartDate
andEndDate
として使用される日付は含まれます。 そのため、たとえば、StartDate
value が 2019 年 7 月 1 日 if、その date が返されるテーブルに含められます (dates
列に date が存在する場合)。返されるテーブルには、
Dates
列に格納されている日付のみを含めることができます。 そのため、たとえば、Dates
列が 2017 年 7 月 1 日から始まる if、StartDate
value が 2016 年 7 月 1 日 and、返されるテーブルは 2017 年 7 月 1 日から開始されます。この関数は、行レベル セキュリティ (RLS) 規則 or 計算列で使用する場合に、DirectQuery モードで使用するためにサポート not。
例
次の Sales テーブル measure 定義では、DATESBETWEEN 関数を使用して、のdate (LTD) 計算を生成します。 date は、timeの最初から time に対する measure の蓄積を表します。
数式で MAX 関数が使用されていることに注意してください。 この関数は、filter コンテキストにある最新の date を返します。 そのため、DATESBETWEEN 関数は、earliestdate から報告される最新の date までの日付のテーブルを返します。
この記事の例は、sample Adventure Works DW 2020 Power BI Desktop モデルで使用できます。 モデルを取得するには、モデル
Customers LTD =
CALCULATE(
DISTINCTCOUNT(Sales[CustomerKey]),
DATESBETWEEN(
'Date'[Date],
BLANK(),
MAX('Date'[Date])
)
)
Date テーブルに格納されている earliestdate が 2017 年 7 月 1 日であることを検討してください。 そのため、レポートが 2020 年 6 月の month によって measure を filters すると、DATESBETWEEN 関数は 2017 年 7 月 1 日から 2020 年 6 月 30 日までの daterange を返します。