![](/qlik-training_blog/article/__icsFiles/afieldfile/2024/12/26/164_Thumnail.png)
- Qlik Cloud
- Qlik Sense
- 開発者
- 可視化・分析
テーブルで任意の列や行を表示できるようにしたい!
テーブルに表示する列や行を、ユーザーが選択できるようにする方法をご紹介します!
|
※本記事は バージョン「May 2021」の[SaaS]で作成しています。
Where句は以下のように記述します。
LOAD 項目名
FROM テーブル
Where 条件式 ;
LOAD文で読み込むテーブル内のレコードに対して、Where句の条件式で評価します。
評価結果が真(true)のレコードのみが取り込まれます。
なお、LOAD文内のWhere句では、Qlik製品の数式記述方法で条件式を記述する必要があり、
Qlik製品の関数しか利用できないことに注意が必要です。
以下のデータを例に、Where句の記述例をご紹介します。
▼データ例
|
■2021年のデータのみを取得したい
以下のように記述します。
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 年 = 2021;
以下のデータが取り込まれます。
|
■2020年以降のデータのみを取得したい
Where句の条件式に不等号を利用します。
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 年 >= 2020;
以下のデータが取り込まれます。
年 | 商品コード | 売上 |
2020 | A001 | 200 |
2020 | A002 | 150 |
2020 | B001 | 200 |
2021 | A001 | 300 |
2021 | A002 | 100 |
2021 | B001 | 150 |
■2019年の商品コードB001のデータのみを取得したい
and演算子で複数の条件を指定します。
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 年 = 2019 and 商品コード = 'B001';
以下のデータが取り込まれます。
年 | 商品コード | 売上 |
2019 | B001 | 300 |
■商品コードが「A」で始まる商品コードのデータのみを取得したい
条件式でワイルドカードを記述することでできます。
ワイルドカードを利用する場合、like演算子を利用します。
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 商品コード like 'A*';
以下のデータが取り込まれます。
年 | 商品コード | 売上 |
2019 | A001 | 100 |
2019 | A002 | 200 |
2020 | A001 | 200 |
2020 | A002 | 150 |
2021 | A001 | 300 |
2021 | A002 | 100 |
■商品コードが「A001」「B001」のデータを取得したい
今回のデータ例の場合、記述方法は複数あります。
以下3つの方法をご紹介します。
・like演算子を利用して、「001」で終わるものを取得する
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 商品コード like '*001';
・or演算子を利用して、複数条件を指定する
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where 商品コード = 'A001' or 商品コード = 'B001';
・Match関数を使用して値が返ったものを取得する
LOAD
年,
商品コード,
売上
FROM [lib://DataFiles/KKA_TEST.xlsx]
(ooxml, embedded labels, table is Sheet1)
Where Match(商品コード,'A001','B001');
Match関数の演算結果が1以上の場合はTrueとなり、該当するレコードのみを
取得します。この方法は、SQL文のIN句に似ています。
※Match関数について
Match関数は、第一引数に対象の項目名を指定し、第二引数以降に指定した検索値に
該当する項目値があった場合に、第二引数以降の位置を返します。
例)Match( M, 'Jan','Feb','Mar')
M = Feb のとき 2 を返します。
M = Mar のとき 3 を返します。
M = Apr または jan のとき 0 を返します。
※Match関数は大文字/小文字を区別します。
Match関数は特定の文字列の検索になりますが、WildMatch関数でワイルドカードを
使用することもできます。この2つの関数は、弊社サポート担当者が動画コンテンツ
「BI学校」で分かりやすく解説しています。(動画タイトル:Match関数とWildMatch関数)
気になる方はぜひチェックしてください!
AWSCアカウント登録方法はこちら
BI学校(動画コンテンツ)の一覧や視聴方法はこちら
上記いずれの方法でも、以下のデータが取り込まれます。
年 | 商品コード | 売上 |
2019 | A001 | 100 |
2019 | B001 | 300 |
2020 | A001 | 200 |
2020 | B001 | 200 |
2021 | A001 | 300 |
2021 | B001 | 150 |
上記でご紹介した例はほんの一例です…!工夫して条件式を記述することで、
様々な条件で取り込むデータを制限することができます。
アプリに不要なデータを取り込まないことはパフォーマンス改善にもつながります。
Where句でデータ取り込みを制御して必要なデータを取り込むようにしてみませんか?
テーブルに表示する列や行を、ユーザーが選択できるようにする方法をご紹介します!
Qlik Senseでは運用状況を効率的に把握するための 便利なモニタリングアプリが用意されています。 モニタリングアプリの使い方をご紹介いたします。
Qlik Senseでは運用状況を効率的に把握するための 便利なモニタリングアプリが用意されています。 モニタリングアプリの使い方をご紹介いたします。