我今天遇到了一个有趣的行为/问题。
每次我在我的表上开始查询时,我都会得到按唯一键而不是主键排序的结果。
我的表格列:
id (PRIMARY KEY),
name (UNIQUE KEY)
但是,如果我添加另一个正常列,它会再次开始正常运行。
有人可以解释一下和/或给我一个提示如何关闭它吗?
我今天遇到了一个有趣的行为/问题。
每次我在我的表上开始查询时,我都会得到按唯一键而不是主键排序的结果。
我的表格列:
id (PRIMARY KEY),
name (UNIQUE KEY)
但是,如果我添加另一个正常列,它会再次开始正常运行。
有人可以解释一下和/或给我一个提示如何关闭它吗?
MySQL 本身似乎没有这方面的文档,但我确实找到了这个: http://forums.mysql.com/read.php?21,239471,239688#msg- 239688
本质上,如果您不指定ORDER BY
,则不应相信以任何特定顺序返回的数据。默认排序行为也因引擎而异。
不要依赖没有ORDER BY
.
无法保证 MySQL 返回行的顺序。它取决于 MySQL 版本、存储引擎、存储引擎版本。请查看以下链接了解更多详情