Query Resultとは
RedashにはQuery Resultっていう便利なデータソースがあります。
どういうことができるかというと、RedashでQuery1とQuery2とかいうクエリがあったとします。
Query Resultはこの二つのクエリの結果を取り込んで、新しくクエリを作ることができたりします。
基本的な使い方は調べれば先人が書いていてくれるので、ここでは省略します。
はまったところ
Query Resultsに取り込むクエリにパラメータが使用されていると、現行のバージョンだと上手く取得ができません。
パラメータとは{{}}で囲まれた変数のことです。
Query Resultsで取り込むクエリはIDで指定するのですが、パラメータを使用していないクエリなら、
select * from query_1
といった感じに書けばうまくいきます。
しかしながら、パラメータが指定されていた場合この記述方法ではうまくいきません。
そこで、cached_queryなんてものがV6で追加されたみたいです。
select * from cached_query_1
とすることで、キャッシュからパラメータの値を取得してくれるみたいです。
え?じゃあこれでいいじゃんって感じですが、Query Results側からの直接的な設定ができないのは何かと不便です。
また、自分の実行環境で行った時は、キャッシュからうまく値が取れないことがあり、使い物になりませんでした。orz
結局、元クエリからパラメータを除いたクエリを作成し、それをもってきてQuery Results側でパラメータを指定しなおすとかいうめんどくさいことをしました。
Redashの製作者さんが実装するよーみたいなことを話していたので、今後のバージョンでの実装に期待ってかんじですね。
自分の知識足らずでうまくできる方法があるようでしたら教えてください。お願いします...