mysql和oracle默认排序的方法 - 不指定order by

吾爱主题 阅读:223 2024-04-01 23:19:40 评论:0
目录
  • 先说结论
  • 1. innoDB引擎
    • 1.1 创建表,id类型为字符串
    • 1.2 插入数据,并查询
    • 1.3 创建表,id字段类型为int
    • 1.4 插入数据,并查询
    • 1.5 结论
  • 2. myISAM引擎
    • 2.1 创建表, id类型为字符串
    • 2.2 插入数据,并查询
    • 2.3 创建表,id字段类型为int
    • 2.4 插入数据,并查询
    • 2.5 结论

先说结论

1. oracle: oracle 默认没有排序规则

2. mysql

2.1 innoDB引擎: 默认查询按照id正序排序

2.2 myISAM引擎: 默认按照插入时间正序排序

mysql: 已明确查询的默认排序方式为id或者插入顺序的一种

1. innoDB引擎

1.1 创建表,id类型为字符串

1.2 插入数据,并查询

如下图:

观察create_date可以看出,插入顺序为"1","2","12"。 但查询结果是"1", "12", "2" , 因此一定不是按照插入时间排序的。 强调:当前表的id类型为字符串

1.3 创建表,id字段类型为int

1.4 插入数据,并查询

如下图:

观察create_date可以看出,插入顺序为1 , 12 , 2。 但查询结果是1 , 2 , 12, 因此一定不是按照插入时间排序的。 强调:当前表的id类型为int

1.5 结论

由以上两个结果可以观察到, innoDB引擎,默认使用的id排序

2. myISAM引擎

2.1 创建表, id类型为字符串

2.2 插入数据,并查询

如下图:

观察create_date可以看出,插入顺序为1 , 2 , 12, 3。 查询结果也是1 , 2 , 12, 3, 因此一定不是按照id排序的。 强调:当前表的id类型为字符串

2.3 创建表,id字段类型为int

2.4 插入数据,并查询

结果如图:

观察create_date可以看出,插入顺序为1 , 12 , 2, 11。 查询结果也是1 , 12 , 2,11, 因此一定不是按照id排序的。 强调:当前表的id类型为int

2.5 结论

由以上两个结果可以观察到, myISAM引擎,默认使用的插入顺序排序

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文地址:https://blog.csdn.net/changerzhuo_319/article/details/85555526

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容