クエリの結果に含めるレコードを定義するには、クエリ にフィルタを追加し、その条件を Builder で設定します。フィルタの基準は以下の通り:
- 特定の口座や日付などの静的な値
- クエリ実行時に動的に値を設定するパラメータ
- SQL操作や関数から得られる計算値
フィルタの基準を定義するには、フィルタ タブでその値を選択し、フィルタ・プロパティ パネルでその値を設定します。
静的な値によるフィルタリング
静的な値に基づいてレコードを含めるには、Filter Properties パネルに値を入力し、Apply をクリックします。
動的パラメータ値によるフィルタリング
実行時にデータをスライスするなど、クエリの実行時にフィルタの値を動的に設定するには、パラメータ値を使用します:
- Filter Properties タブで、Parameter をクリックし、使用するパラメータを選択します。パラメータを追加するには、Create new parameter をクリックします。
- 適用 および保存 をクリックする。
計算値によるフィルタリング
SQL操作や関数からフィルタの値を導き出すには、計算値を使用します。例:
- Date フィールドを、クエリ実行時に常に "現在の "日付にフィルターするには、計算値
NOW()
を設定する。 - Current Year パラメータにオフセットして、Year フィールドを前年にフィルタリングするには、
YEAR = :CurrentYear - 1
の計算値を設定する。
計算値を設定する:
- フィルタのプロパティ パネルで、計算 を有効にします。
- Included Columns の下に、計算に使用するソース列を追加します。
- 計算 で、値を導き出す計算式を作成する。
- ソース・カラム を参照するには、
{1} のように、割り当てられた数値トークンを入力します。+ {2}
. - パラメータ を参照するには、
:CurrentYear
のように、コロンの後にその名前を入力する。
- ソース・カラム を参照するには、
- [適用]をクリックします。
フィルタ条件と大文字小文字の区別
フィルター基準は大文字と小文字を区別する。 たとえば、State フィルタを "Iowa "に設定すると、結果には大文字の "Iowa "を含むレコードが含まれるが、小文字の "iowa "は含まれない。しかし、計算を使えば、値のケーシングに関係なくレコードを返すことができる。
- カラムの値を小文字に変換するには、
LOWER()
関数-例えばLOWER(TBL.STATE) = 'iowa'
- をフィルターとして使用する。 - フィルター基準の大文字と小文字を区別しないようにするには、正規表現
REGEXP_LIKE
条件にi
フラグを付けた計算値を設定します。SELECT * FROM table WHERE REGEXP_LIKE(column, '(?i)ab')
.