使用两个大括号表达参数,如 {{ start }}

可插入到sql代码的任何位置,原理应该就是替换,所以该加引号的加引号

支持的数据类型有 Text, Number, Date, Date and Time, Date and Time (with Seconds), and Dropdown List.


日期与日期范围

支持三个类型,Date, Date and Time, Date and Time (with Seconds)

日期范围的特殊参数,start,end,如下示例

SELECT a, b c
FROM table1
WHERE
  relevant_date >= '{{ myDate.start }}'
  AND table1.relevant_date <= '{{ myDate.end }}'

下拉框

通过sql语句来获得下拉值,如下所示

SELECT user_uuid as 'value', username as 'name'
FROM users

注意,结果一定要有value及name,其中name用于显示,value用于传参

支持多选

在下拉框的配置中勾选“ Allow multiple values”

当多选后,参数值会以 值1,值2,值3

如果选择包括的引号,则参数值会显示为  '值1','值2','值3'

通常会用在in中,如下所示

SELECT ...
FROM   ...
WHERE field IN ( {{ Multi Select Parameter }} )

在嵌入或者共享仪表盘中使用

假如有如下查询语句

SELECT * FROM table WHERE field = {{param}}

那么想替换参数,如下

https://app.redash.io/<slug>/queries/1234?p_param=100

如上所示,约定使用前缀p_表示给参数赋值,如上的param,那么就需要使用p_param

另:为了安全考虑,参数不能是文本,否则可能发生sql注入攻击

关联仪表盘的参数

当将查询添加到仪表盘时可指定关联的参数