【发布时间】:2020-08-11 15:24:20
【问题描述】:
我正在尝试对一些游乐设施数据进行会话化,并且我为每个游乐设施创建了一个标志(每一行都是此数据集中的一个游乐设施)。我制作了一个名为flags 的表格,看起来像这样:
ride_id | rider_id | ride_request_datetime | rider_request_number | new_booking_flag
-------------------------------------------------------------------------------------
100 Sue 2019-05-09 05:27:00 1 1
101 Sue 2019-05-09 05:27:18 2 0
102 Sue 2019-05-10 11:00:09 3 1
203 Joe 2020-03-09 05:27:18 1 1
204 Joe 2020-03-09 05:36:00 2 0
根据ride_request_datetime 的一些标准,我创建了new_booking_flag 列。现在,我想对 new_booking_flag 上的值求和,按 Rider_id 分区并按 Rider_request_number 排序——以获得代表“booking_request_number”的列
我试过以下代码:
select
ride_id,
rider_id,
ride_request_datetime,
rider_request_number,
new_booking_flag,
sum(new_booking_flag) over (partition by rider_id order by rider_request_number)
from flags
limit 50;
SQLite3 给了我这个错误:
Error: near "(": syntax error
【问题讨论】:
-
您的 SQLite 版本是否至少为 3.25.0?
-
SQLite 版本为:3.31.1 DB-API 版本为:2.6.0
-
你有最新版本的 SQLite,所以问题出在其他地方,而不是在这个查询中。
标签: sql database sqlite select window-functions