在Firebird中出现的行号错误

3

我想在我的SQL中编写这个查询

SELECT ID, row_number() over() FROM FORMUL order by ID DESC

但是我收到了一个错误信息。

错误:动态SQL错误:未知标记-第1行,第29列(

我该怎么处理这个错误?

1个回答

7
Firebird 2.5及更早版本不支持窗口函数(包括row_number)。解析器认为row_number()是某个UDF或内部函数(稍后会检查该函数是否存在),并将over视为别名,然后over后面的(就变得意外,因此出现了语法错误。

Firebird 3添加了窗口函数。您可以在http://www.firebirdsql.org/en/firebird-3-0/下载Firebird 3。

请参阅发行说明中的“窗口(分析)函数”


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接