Skip to main content

お世話になります。

カスタムSQLでのパラメータ使用について質問があります。

 

Tableau 8 ではカスタムSQLでパラメータの挿入、使用ができるとありました。

しかし、オンライヘルプでは、Where句などでの使用が前提で、検索対象の表名の一部としては置換はできないとよみとれます。

 

カスタム SQL クエリへの接続

注: パラメーターは、リテラル値のみを置換できます。パラメーターは、式または表名などの識別子を置換することはできません。」

 

質問1:

実際に試してみたところ、下記のようなカスタムSQL で、ダッシュボード上でパラメータを切り替え

検索対象テーブルの変更ができているのですが、パフォーマンスや製品の仕組み上、このような形式の

カスタムSQL は使用すべきではないのでしょうか?

 

SELECT `table_<Parameters.tab_cd>`.`ORDERNO` AS `ORDERNO`,

  `table_<Parameters.tab_cd>`.`ORDERNO2` AS `ORDERNO2`,

  `table_<Parameters.tab_cd>`.`ORDERTYPE` AS `ORDERTYPE`,

     :

FROM `tableau_<Parameters.tab_cd>`

 

パラメータ <Parameters.tab_cd> はInteger で指定しており、 table_80, table_81 ... のように

テーブル名とデータの内容は違うが、同じ構造のテーブルがDB上に存在します。

DB はMySQL、Tableau は8.2.4 を使用しています。

 

質問2:

質問1のような形でのカスタムSQL の場合、Tableau Server を使用し、パラメータの値を動的に指定し、

パッケージドワークブック(twbx) を tabcmd などを使用して作成することは可能でしょうか?

 

例えば、<Parameters.tab_cd>=80 のtwbxファイルと<Parameters.tab_cd>=81 のtwbx ファイルを

任意のタイミングで、データ抽出、作成したいと考えています。

実際には、あるグループのユーザーは table_80 を、別のグループのユーザーは table_81 を参照する

ようにできるのが理想で、所属グループに対応した twbx ファイルを抽出できればと思います。

 

Tableau Server を使用できる環境になく、tabcmd のヘルプなどみてみましたが可否がわかりませんでした。

 

初投稿につき不備などありましたら申し訳ないです。

ご存知の方やアドバイスなどありましたら、コメントいただけると助かります。 

どうぞよろしくお願い致します。

 

Ogawa

2 Antworten
  1. 19. Apr. 2015, 09:21

    こんにちは。

     

    質問1: 同じ方式を業務で利用しております。Tableau側というよりデータベース側の負荷が許せば問題ないと思います。複数のパラメータを活用することでTableauで表現できるチャートが増えるので個人的には気に入っている方法です。

     

    質問2:私の知る限りではできないと思います。80、81 の各ワークブックを作る必要があると思います。

    動的にパラメータを操作する機能は多くのTableauユーザがニーズを上げています。(是非、機能要望の投票を!)

    Dynamic Parameters: The Results Are In | Tableau Software

    今回のケースに合致するか微妙ですがETLツールなどで開発できそうならば、

     

    APIを利用して各テーブルごとのTDEを作成し、twbファイルを合わせて zip にすればパッケージワークブックを作成できると思います。

    http://onlinehelp.tableau.com/current/pro/online/ja-jp/help.html#extracting_TDE_API.html

0/9000