使用H2进行递归查询

时间:2018-05-03 22:02:47

标签: java h2

我正在尝试使用H2创建递归查询,但我似乎无法使其工作。

我试图开始工作的递归查询与this previous question I posed to StackOverflow的答案相似。我正在尝试为JUnit测试创建一个查询,因为H2无法创建真正的存储过程(处理结果集的Java代码不是一个很好的答案,因为它完全跳过了我测试中的大部分代码)。

我已经彻底阅读了H2文档并尝试了一些基本的东西,即使用H2 documentation中的一个示例。我发现当我在控制台中运行时,H2文档中显示的递归查询不起作用:(

我正在使用文档链接中的第二个示例,即:

Intent

任何人都知道为什么这个查询不起作用?似乎如果它在文档中它应该工作;也许是回归错误?我正在使用H2版本1.4.188。

看起来H2不喜欢未指定CTE的值(例如WITH cte1 AS ( SELECT 1 AS FIRST_COLUMN ), cte2 AS ( SELECT FIRST_COLUMN+1 AS FIRST_COLUMN FROM cte1 ) SELECT sum(FIRST_COLUMN) FROM cte2; ),但文档似乎表明它不是必需的。但是,即使我解决了这个问题,它在第一个CTE的右括号之后的逗号上也会失败,这正是我对我正在尝试编写的查询的困扰。

0 个答案:

没有答案