2017-01-16 94 views
0

我在表中有一组记录。我通过select获得记录,没有任何订单陈述,只是select * from table,所以没有任何明显的顺序。Postgresql记录顺序

更新某些记录后,记录顺序是否会有所不同?

回答

0

Postgres数据库表中没有内部命令(对于大多数其他RDBMS,情况也是如此)。选择时将存在的唯一顺序是您使用ORDER BY子句指定的顺序。所以,你的问题的答案是,如果你想在结果集中保持一致的,可重复的顺序,你应该总是依靠ORDER BY

+0

谢谢,你是对的。从PG文档:“在查询生成了一个输出表(处理完选择列表之后)之后,它可以选择性地进行排序,如果未选择排序,那么这些行将以未指定的顺序返回。将取决于扫描和连接计划类型以及磁盘上的顺序,但不能依赖它。只有在明确选择了排序步骤的情况下,才能保证特定的输出顺序。“ – user3309314

+0

很好的参考,谢谢你包括这个。 –