Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python sqlite3是否支持rank函数_Python_Sqlite - Fatal编程技术网

python sqlite3是否支持rank函数

python sqlite3是否支持rank函数,python,sqlite,Python,Sqlite,我想知道python sqlite3库是否支持秩函数 当我通过在线Sqlite浏览器执行查询时,它工作正常,但通过python它失败了 File "xyz.py", line 509, in createData conn.execute('SELECT RANK() OVER ( ORDER BY dateAndTime) FROM xyz;') sqlite3.OperationalError: near "(": syntax error 提前谢谢 我不知道Python脚本使用

我想知道python sqlite3库是否支持秩函数

当我通过在线Sqlite浏览器执行查询时,它工作正常,但通过python它失败了

File "xyz.py", line 509, in createData
    conn.execute('SELECT RANK() OVER ( ORDER BY dateAndTime)  FROM xyz;')
sqlite3.OperationalError: near "(": syntax error

提前谢谢

我不知道Python脚本使用的SQLite版本是否支持RANK。假设没有,以下是一个查询,您可以将其用作解决方法:

SELECT
    (SELECT COUNT(*) + 1 FROM yourTable t2
     WHERE t2.id < t1.id) rnk
FROM yourTable t1
ORDER BY
    dateAndTime;
我们可以使用相关子查询来处理秩逻辑。请注意,对于稠密的_秩,解决它可能不是那么容易

这是一个演示,显示我的逻辑和排名的行为方式相同


我不知道您的Python脚本使用的SQLite版本是否支持RANK。假设没有,以下是一个查询,您可以将其用作解决方法:

SELECT
    (SELECT COUNT(*) + 1 FROM yourTable t2
     WHERE t2.id < t1.id) rnk
FROM yourTable t1
ORDER BY
    dateAndTime;
我们可以使用相关子查询来处理秩逻辑。请注意,对于稠密的_秩,解决它可能不是那么容易

这是一个演示,显示我的逻辑和排名的行为方式相同


另一种选择是使用行号:

row_number()  
结合升序ASC或降序DESC获得排序的排名

ORDER BY DESC # or ASC 
此外,在python中使用sqlite时,这可能很有用

另一种选择是使用行号:

row_number()  
结合升序ASC或降序DESC获得排序的排名

ORDER BY DESC # or ASC 
此外,在python中使用sqlite时,这可能很有用
肖恩指出我的库太旧了。 溴


Sqlite在3.25中有窗口函数,所以您必须使用该函数或更新的函数


肖恩指出我的文库太旧了。 溴


Sqlite在3.25中有窗口函数,所以您必须使用该函数或更新的函数


你有没有试过把它取下来;在查询语句的末尾?我认为通过python进行排名应该不会有任何问题。看看这里,因为它可能会帮助SQLite在3.25中获得窗口函数,所以您必须使用该函数或更新的函数。是的,我的库是3.22版。感谢您的帮助@Shawnhave您是否已尝试移除;在查询语句的末尾?我认为通过python进行排名应该不会有任何问题。看看这里,因为它可能会帮助SQLite在3.25中获得窗口函数,所以您必须使用该函数或更新的函数。是的,我的库是3.22版。感谢您的帮助@ShawnI agre可以用于我的测试示例,但我的实际案例需要rankI agre可以用于我的测试示例,但我的实际案例需要rankHow如果库不支持rank,这是否有帮助?@user2532072抱歉,我在答案中粘贴了错误的查询。检查更新的答案或演示。如果库不支持排名,这有什么帮助?@user2532072抱歉,我在答案中粘贴了错误的查询。检查更新的答案或演示。