0

我使用 Heroku 上的数据剪辑功能运行了一个 SQL 查询。效果很好 - 我得到的结果顺序正确,因为我的部分子句指定了“ORDER BY ...”。

我刚刚从 Heroku 中提取了我的数据库的副本。然后我运行 ActiveRecord::Base.connection.execute ""

我得到的数据是正确的,但是 PGResult 对象的数据以完全随机的方式排序——即我的“order by”子句完全被忽略了。

我想知道为什么会发生这种情况,以及是否有任何方法可以防止这种情况发生。

4

1 回答 1

0

我们现在使用与 Heroku 相同版本的 Postgres,我们得到相同的数据集。但是,它仍然没有正确排序。order by 子句仍然不能正常工作,所以我们只是强制使用 rails 进行排序(因为我们将结果限制为 10,所以 Rails 的工作量并不大)。

我发布这个是因为似乎没有人有一个好的答案,而且我们也没有找到任何有效的方法。不妨让其他人知道,出于某种原因,似乎存在问题。去挖掘一下,并可能向 postgresql 人报告一个错误。

于 2012-11-27T00:18:15.440 回答