Power BI で DAX 関数を使用して日時、時、分、秒を加算および減算するにはどうすればよいですか?
Power BI では、DAX 関数を使用して日時を加算および減算できます。現在の時刻に 3 時間を追加すると仮定した例を次に示します。
After8Hour = NOW() + TIME(8,0,0)
ここでは、関数を使用しNOW()
て現在の日時を返し、次にTIME()
関数を使用して指定された時間、分、秒の数を加算します。この例では 8 時間を追加するため、最初の引数として 8 を渡し、分と秒の両方に 0 を渡します。
上記の例に加えて、日時の加算と減算の一般的な例をいくつか示します。
プラス一定の時間間隔
注文から 2 日以内に発送する必要がある注文があるとします。次の式を使用して発送日を計算できます。
ShippingDate = OrderDate + 2
ここでは、OrderDate に 2 日の時間間隔を直接追加します。
一定の時間間隔を引いたもの
会議開始の 30 分前にリマインドする必要があるスケジュールがあるとします。次の式を使用してリマインダー時間を計算できます。
eminderTime = MeetingTime - TIME(0, 30, 0)
ここでは、関数を使用してTIME()
30 分の時間間隔を日時型の値に変換し、MeetingTime
上記から時間間隔を減算します。
2 つの日時間の時間間隔を計算する
Power BI DAX の関数はDATEDIFF()
、2 つの日付または時刻の差を計算するために使用されます。間隔タイプ (年、月、日など)、開始日、終了日の 3 つのパラメータを取ります。
DATEDIFF()
関数の基本的な構文は次のとおりです。
DATEDIFF(<interval>, <start_date>, <end_date>)
たとえば、2020 年 1 月 1 日から 2020 年 2 月 1 日までの日数を計算するには、次の式を使用できます。
DATEDIFF(DAY, "1/1/2020", "2/1/2020")
これにより、2 つの日付の間の日数である 31 の値が返されます。
間隔パラメータは次のいずれかである必要があります。
YEAR
QUARTER
MONTH
DAY
HOUR
MINUTE
SECOND
DATEDIFF()
この関数には終了日の計算は含まれていないことに注意してください。終了日を含める場合は、結果に 1 を加算する必要があります。
たとえば、2020 年 1 月 1 日から 2020 年 2 月 1 日までの日数 (両方の日付を含む) をカウントするには、次の式を使用できます。
DATEDIFF(DAY, "1/1/2020", "2/1/2020") + 1
これにより、2 つの日付の間の日数である 32 の値が返されます。