Hasura 原生带参数的 SQL 查询

问题描述 投票:0回答:1

我正在尝试执行本机 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 上的使用方式。但我无法做到正确。

我错过了什么?

postgresql graphql hasura
1个回答
0
投票

Hasura 似乎正在使用参数化查询,因此您不能在这样的字符串中插入变量。相反,您可以将该值乘以

interval '1 day'
:

d.time >= CURRENT_DATE - (interval '1 day' * {{number_of_days}})
© www.soinside.com 2019 - 2024. All rights reserved.