🔡
Redash の QRDS でクエリパラメータを使う方法
概要
執筆時点のドキュメントでは以下の記載があり、QRDS でクエリパラメータは使えないとされています
The QRDS doesn’t work with results from queries that use parameters.
If you try it you’ll see Error running query: Failed loading results from query id xxxx.
Remove the parameters from query_xxxx to fix the error.
過去の PR を追ったところ執筆時点で QRDS でのクエリパラメータの利用は実装済みであり、ドキュメントが古い状態でした
この PR を見つけるまで対応方法がわからなかったので、この記事が同様に困っている方の助けになればと思います
使い方
PR に記載されている文章の引用になりますが、基本的なフォーマットは以下です
param_query_<query_id>_{<URL ENCODED KEY=VALUE PARAMETER STRING>}
この書き方はクエリをキャッシュする場合の cache_query_
と同様のフォーマットになります
使用例
データソースとなるクエリは以下とします(ID:123)
SELECT name
FROM users
WHERE users.id = {{id}}
QRDS で呼び出す場合は query_123 の形になりますが、ここに上記フォーマットでクエリパラメータを渡すことができます
SELECT a.name
FROM param_query_123_{id=1}
QRDS で定義したパラメータをデータソースに渡す場合は以下になります(パラメータ id を定義したと想定)
SELECT a.name
FROM param_query_123_{id={{id}}}
備考
ドキュメントについては PR 作成済みなので無事マージされたらそのうち更新されると思います
Discussion