我正在尝试用sql编写窗口函数(我使用dbeaver)。脚本很简单,但是,我得到了一个错误
SQL Error: Syntax error: Encountered " "(" "( "" at line 4, column 20. Was expecting: <EOF>
代码:
SELECT Athlete, Event, row_number() OVER() AS num FROM summer;
我是sql新手,所以任何帮助对我都很重要
w8ntj3qf1#
您必须使用sqlite的旧版本。此代码工作正常:
create table summer ( athlete int, event int ); SELECT Athlete, Event, row_number() over () AS num FROM summer;
这是一把小提琴。窗口函数在3.25版中引入。您可以使用以下方法检查您的版本:
select sqlite_version();
注意,sql标准指定 ORDER BY 是必需的 ROW_NUMBER() . 在sqlite(和其他一些数据库)中,它是可选的。
ORDER BY
ROW_NUMBER()
aydmsdu92#
在sqlite中,似乎不需要“over”后面的括号。所以会是这样的:
SELECT Athlete, Event, row_number() OVER AS num FROM summer;
来源
2条答案
按热度按时间w8ntj3qf1#
您必须使用sqlite的旧版本。此代码工作正常:
这是一把小提琴。
窗口函数在3.25版中引入。您可以使用以下方法检查您的版本:
注意,sql标准指定
ORDER BY
是必需的ROW_NUMBER()
. 在sqlite(和其他一些数据库)中,它是可选的。aydmsdu92#
在sqlite中,似乎不需要“over”后面的括号。所以会是这样的:
来源