psycopg2 cursor fetchall 结果集的顺序

psycopg2 cursor fetchall order of resultset

我有一个应用程序服务器 API 连接到我们的 postgres 后端并使用 psycopg2 连接和游标执行一个 HAS ORDER BY 子句的查询对象。

当我调用 cursor.fetchall() 时,我是否可以假设结果集中元组的顺序将始终与执行查询中的 ORDER BY 子句确定的顺序完全相同?

换句话说,我可以安全地假设 psycopg2.cursor 不会打乱结果集元组的原始顺序吗?

谢谢, 普拉纳夫

是的,订单被保留。

查询已经执行,结果可用。 fetchone(), fetchmany() 和 fetchall() 保留游标结果列表的原始顺序。