我有一个表例如:id |名字| DATE_ADD
内容:
1| Mark | 2018-02-01 10:00:00
2| Andrew | 2018-02-01 10:00:00
当我尝试执行此请求时:select * from table order by date_add
我按下一个顺序获取行:2,1
它出现在Percona MySQL docker
中在我的主机上使用相同的Percona,我得到了1,2顺序
如何在我的主机上启用Docker中的逻辑?
答案 0 :(得分:4)
除非在ORDER BY子句中指定,否则行排序是不确定的。没有您应该获得的默认排序(或子排序)。
在这种情况下,您应该指定一个排序条款:
ORDER BY date_add, id
此行为可能会受到Percona或Docker的影响,但同样,您不应期望任何明显的"默认"即使在几分钟之间的查询之间进行排序也是如此。另请参阅What is the default Order By of queries?