firebird中的row_number错误

时间:2016-01-02 07:36:32

标签: sql firebird

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

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

但是我得到了一个错误。

  

错误:动态sql错误:令牌未知 - 第1行,第29列(

我可以为此错误做些什么?

1 个答案:

答案 0 :(得分:7)

Firebird 2.5及更早版本没有窗口功能(包括row_number)。解析器认为row_number()是某个UDF或内部函数(稍后检查所述函数的存在),并认为over是别名,(之后的over是意外的因此语法错误。

Firebird 3中添加了窗口功能。您可以在http://www.firebirdsql.org/en/firebird-3-0/

下载Firebird 3

另见"Window (Analytical) Functions" in the release notes