OFFSET は別の時間軸 (現在の期間の前または後) の値を返します。 

OFFSET を使用すると、現在の売上と過去の売上を比較できます。 

OFFSET(Value to offset, Offset amount, Substitute value)

引数データ型説明
Value to offset数値、ブール値、日付、
時間軸、リスト、又はテキスト
現在の売上など、データをオフセットまたは取得する参照値。
Offset amount数値

現在の参照値から移動する期間数:

  • 正の値は、時間的に前方、つまり将来の期間に移動します。
  • 負の値は、時間的に後方、つまり過去の期間に移動します。
  • ゼロは現在の期間のままです。
Substitute valueValue to offset と同じ
Offset amount でモデルの時間範囲外の期間を指定する場合に返す値。

OFFSET 関数は Value to offset 引数と同じデータ型で値を返します。

この関数では三つの引数を使用できます。これらの関数に二つの引数があり、3 番目の引数を宣言しない場合、デフォルトで Time になります。3 番目の引数を宣言すると、ライン アイテムに関連する任意のディメンションを引数として使用できます。

Polaris では、Offset amount 引数の値が NaN (非数) の場合に Substitute value 引数が返されます。

Classic エンジン:

  • NaN は 0 と同等です。
  • 時間ディメンションでのみ OFFSET 関数を使用できます。Polaris では、バージョンを除くすべてのディメンションで OFFSET を使用できます。
  • Expression 引数のデータ型がリストか時間軸で、別のデータ型に解決されない場合、結果ライン アイテムでデータ型を同じにする必要があります。

OFFSET(Current sales, -1, 0)


JanFebMarAprMayJun
Current sales3,0004,0004,5003,7003,5004,100
Last month's sales03,0004,0004,5003,7003,500


式「OFFSET(Current sales, -1, 0)」は「Last month's sales」ライン アイテムに適用されます。この式の内容は以下のとおりです。

  • Current sales」は参照値 (Value to offset) です。
  • -1 は現在の期間から移動する期間数 (Offset amount) です。マイナス 1 は現在の期間の 1 か月前を表しています。
  • 0 は、指定された期間に利用可能なデータがない場合に代入する値 (Substitute value) です。

OFFSET は NONSTRICT モードの LEAD と同じ働きをします。

Value to offset 引数と結果ライン アイテムで同じ時間範囲を使用する必要があります。このルールに反する数式はすべて拒否されます。


JanFebMarAprMayJun
FruitsApplePeachBananaPearFigMelon
VegCarrotTomatoCucumberOnionLettuceBroccoli
OFFSET(Fruits, -1, Veg)CarrotApplePeachBananaPearFig
OFFSET(Fruits, 2, Veg)BananaPearFigMelonLettuceBroccoli

FY16FY17FY18FY19FY20
データ
OFFSET(Data, 1, FALSE)