我正在尝试执行本机 SQL 查询。 它有一个整数查询参数,
number_of_days
。
在 SQL 中我已将其包含在
WHERE
子句中
d.time >= CURRENT_DATE - interval '%({{number_of_days}})s days'
我正在使用 GraphQL 执行查询:
query MyQuery {
PR_Timelinedaily_site_locations(args: {number_of_days: 3}) {
max_val
min_val
forecast_val
date
}
}
当我尝试运行此查询时,出现以下错误:
{
"errors": [
{
"message": "invalid input syntax for type interval: \"%(($2)::integer)s days\"",
"extensions": {
"path": "$",
"code": "data-exception"
}
}
]
}
我尝试使用
number_of_days
的字符变化类型,并尝试重新安排它在 SQL 上的使用方式。但我无法做到正确。
我错过了什么?
Hasura 似乎正在使用参数化查询,因此您不能在这样的字符串中插入变量。相反,您可以将该值乘以
interval '1 day'
:
d.time >= CURRENT_DATE - (interval '1 day' * {{number_of_days}})