MENU
Dr.Sumの主要な機能のひとつであるグループ環境変数に組織名を入れて「自部門の売上データのみを抽出する」という使い方をします。
しかし運用をしていくと自部門だけじゃなく特定の条件でひっかかる部門を抽出したいという要望も増えてくるはず。今回は環境変数を使った複雑な絞り込みの仕方について解説します。いろいろと応用の効く内容になっておりますので、ぜひ参考にしてください。
環境変数の簡単な使い方についてはこちらの記事を参照してください。
LIKE検索(あいまい検索)は使い勝手が良いです。様々な部門がある中で”営業”という文字列が含まれている部門を全部抽出することができます。
“第一営業部”でも良いですし、”営業企画部”でも良いです。文字列の中に”営業”という文字があれば抽出対象となります。
今回はそれだけではなく”営業”と”開発”が含まれているデータを抽出します。
上図の解説がわかりやすいですね。
では具体的なやり方を紹介します。
簡単な正規表現と「SIMILAR TO」を使います。SQLは以下のようになります。
SELECT * FROM 部署マスタ WHERE 部署名 SIMILAR TO ('%営業%|%開発%’)
部署名の中にあいまい検索で”営業”もしくは”開発”が含まれていたら、この構文で抽出することが可能です。
グループ関数をつかっていないので、この方法を多用したときに、”営業”を”企画”に変えたいなどの要望が出ると困ってしまいそうですね。
グループ情報を1つの文字列で返す「GET_GROUP_INFO_LIST」と先程の「SIMILAR TO」を合わせることで実現します。
SELECT * FROM 部署マスタ WHERE 部署名 SIMILAR TO (GET_GROUP_INFO_LIST(ENV1, '|'))
環境変数にはそれぞれ下図のような設定をします。
%営業%のように環境変数を入れてもちゃんと抽出されるのですね。
このようにして複数のLIKE検索(あいまい検索)を使用することが可能です。
グループ環境変数で複数のLIKE検索ができるようになったのはVer 5.5からとなります。特殊演算子「SIMILAR TO」が使えるようになったのが大きいですね。
他にもオススメSQLはたくさんありますので、また紹介させていただきますね。
また環境変数の使い方の解説が他にもありますので、あわせてご覧ください。
Related article
Pick up
Ranking
Info