使用可以具有多个值的 Where 查询时出现 Grafana Postgres 错误

Grafana Postgres Error When Using Where Query That Can Have Multiple Values

我有一个从 PostgreSQL 数据库中提取的 Grafana 网站。在仪表板中,我试图创建一个折线图,并在其中两列(项目和史诗)上设置了过滤器。过滤器对项目工作正常(可能是因为只有一个项目值,并且数据库中的所有行都设置为该值)。

但是当我尝试过滤“史诗”时,它只适用于单一选择。 'All' 选择给我以下错误: pq: syntax error at or near ","

下面是我如何尝试配置此过滤器的屏幕截图。

另请注意,史诗与一个变量相关联,下面是我如何设置该变量的屏幕截图

编辑

请求生成SQL

{
  "request": {
    "url": "api/tsdb/query",
    "method": "POST",
    "data": {
      "from": "1577958613797",
      "to": "1609224964157",
      "queries": [
        {
          "refId": "A",
          "intervalMs": 21600000,
          "maxDataPoints": 1470,
          "datasourceId": 4,
          "rawSql": "SELECT\n  \"timestamp\" AS \"time\",\n  cycle_time AS \"cycle_time\"\nFROM issue_metrics\nWHERE\n  $__timeFilter(\"timestamp\") AND\n  project = 'LUSFPRO3' AND\n  epic = 'LUSFPRO3-68','LUSFPRO3-2','LUSFPRO3-69'\nORDER BY 1",
          "format": "time_series"
        }
      ]
    },
    "hideFromInspector": false
  },
  "response": {
    "results": {
      "A": {
        "error": "pq: syntax error at or near \",\"",
        "refId": "A",
        "meta": {
          "executedQueryString": "SELECT\n  \"timestamp\" AS \"time\",\n  cycle_time AS \"cycle_time\"\nFROM issue_metrics\nWHERE\n  \"timestamp\" BETWEEN '2020-01-02T09:50:13.797Z' AND '2020-12-29T06:56:04.157Z' AND\n  project = 'LUSFPRO3' AND\n  epic = 'LUSFPRO3-68','LUSFPRO3-2','LUSFPRO3-69'\nORDER BY 1"
        },
        "series": null,
        "tables": null,
        "dataframes": null
      }
    },
    "message": "pq: syntax error at or near \",\""
  }
}

该多值变量生成错误的 SQL 语法:

epic = 'LUSFPRO3-68','LUSFPRO3-2','LUSFPRO3-69'

GUI 编辑器仅适用于简单的查询。切换到文本编辑模式并将查询中的 epic 条件更新为:

epic IN ($Epic)

以便生成正确的 SQL 语法:

epic IN ('LUSFPRO3-68','LUSFPRO3-2','LUSFPRO3-69')