在一个由Snowflake数据库支持的Redash应用程序实例上,我设置了一个面板,其中包含许多查询,每个查询都接受一个名为startDate
的date
类型的参数。
我的每个查询都经过编码,通过WHERE子句应用仪表板的选定日期,如:
WHERE created_at >= '{{ startDate }}'
在大多数情况下,这都很好。
但是,在我的仪表板上,对于startDate
参数,我选择了特殊值Yesterday
(而不是特定日期(,我的一些(但不是全部(查询显示错误,而不是显示任何数据:Error running query: 100035 (22007): Timestamp 'd_yesterday' is not recognized
。
这个错误是什么意思?我该如何修复它?
当在受影响的查询中,参数的默认类型仍然是text
,而不是更改为date
时,就会出现此问题。
出现错误是因为选择了特殊日期值"0";昨天"在仪表板上只能使用日期类型的参数,而不能使用文本类型的参数。
在每个单独的查询中将参数类型更改为date
,保存这些更改,然后刷新面板,应该可以解决这个问题。