2

Tableau Softwareを使用して、データベースから計算フィールドを作成しています。これは、データを動的にフィルター処理するために使用されます。基本的に、生年月日が今日の時点で 18 歳を超えている場合は、除外する必要があります。

個人の生年月日 (データベースでは [DOB] として表される) と今日の年の差を正の整数で取得しようとしています。その日付を返したら、それが 18 歳以上かそれ以下かを評価したいと思います。日付の差分関数を作成していますが、何が欠けているのかわかりません。

DATEDIFF('year',DATETRUNC('year',NOW()),DATETRUNC('year',[DOB]))

参照: http://onlinehelp.tableausoftware.com/v7.0/pro/online/en-us/functions_functions_date.html

4

2 に答える 2

2

まず、計算フィールドを少し変更して、負の整数ではなく正の整数を返すようにする必要があります。

DATEDIFF('year',DATETRUNC('year',[DOB]),DATETRUNC('year',NOW()))

それが完了したら、[ディメンション] ペインを右クリックして、次のように新しい計算フィールドを作成します。

IF [Age] < 18 then 1 else 0 END

次に、この 2 番目の計算フィールドを [フィルター] シェルフにドラッグします。これを行うと、フィルタ値を選択できるポップアップ ウィンドウが表示されます。「1」のチェックボックスをクリックし、OK をクリックすると、18 歳以上のすべての人が除外されます。

于 2012-08-08T18:02:12.303 に答える
0

次の計算フィールドは、その人物が今日の時点で 18 歳以上である場合にのみ true を返します。

datediff('day', [DOB], dateadd('year', -18, today())) >= 0
于 2012-11-26T15:47:30.783 に答える