使用 sails-postgresql 执行 WITH RECURSIVE

Execute WITH RECURSIVE using sails-postgresql

我正在使用带有 sails-postgresql (0.11.4) 数据库连接器的 Sails 服务器。

正在尝试执行 WITH RECURSIVE 查询:

this.query({ 文本:

WITH RECURSIVE recursetree(name, parent) AS (
SELECT name, parent
FROM data_indicators

UNION ALL
  SELECT t.name, t.parent
  FROM data_indicators t, recursetree rt 
  WHERE rt.name = t.parent
);
SELECT * FROM recursetree`
}, (err, res) => {

  ....

我收到有关“;”的错误消息但查询也因 WITH 语句

而失败

确实可以使用 sails-postgresql 执行此类查询。有没有最好的方法?

此致

With 子句(或常见的 table 表达式 (CTE) 以赋予其专有名称)不需要 Postgres 中的尾随分号。

with
    cte_name as(
        select * from foo
    )
select * from cte_name

因此,删除 CTE 后的尾随分号,您就可以开始了。