【发布时间】:2013-01-31 22:58:09
【问题描述】:
我的印象是,在 SQL 查询中使用 ORDER BY 不会影响为结果集选择了哪些记录。我认为 ORDER BY 只会影响结果集的呈现。
然而,最近,在我使用 ORDER BY 子句之前,我从查询中得到了意想不到的结果。这表明 a) ORDER BY 可以影响结果集中包含哪些记录,或者 b) 我还有其他一些需要处理的错误。
这是什么?
这里是查询:SELECT node_id FROM users ORDER BY node_id LIMIT 100
(node_id既是主键也是外键)。
如您所见,查询包含一个 LIMIT 子句。似乎如果我使用 ORDER BY,则在选择前 100 名之前对记录进行排序。原以为它会根据自然顺序选择100条记录,然后根据node_id排序。
我已经查找了有关 ORDER BY 的信息,但到目前为止,我能找到的唯一信息表明它仅影响演示文稿......我正在使用 MySQL。
【问题讨论】:
-
您确定您所说的“自然顺序”与 MySQL 对该术语的解释相符吗?
标签: mysql sql-order-by