mysql的物理排序是_mysql 排序规约

mysql 排序规则

sid 是主键 order_no 是唯一索引

谁能帮我解释一下3次查询结果 为什么不一样, 在3个sql 的排序规则都是什么

SQL code

mysql> select sid,order_no,order_status from oms_order limit 10; +-----+----------------+--------------+ | sid | order_no | order_status | +-----+----------------+--------------+ | 20 | 20100319000003 | 0 | | 21 | 20100319000004 | 0 | | 63 | 20100319000046 | -1 | | 69 | 20100320000006 | 0 | | 76 | 20100323000001 | 0 | | 77 | 20100323000002 | 0 | | 78 | 20100323000003 | 0 | | 79 | 20100323000004 | 8 | | 86 | 20100324000007 | -1 | | 93 | 20100324000014 | -1 | +-----+----------------+--------------+ 10 rows in set (0.00 sec) mysql> select sid,order_status from oms_order limit 10; +-----+--------------+ | sid | order_status | +-----+--------------+ | 240 | -1 | | 261 | -1 | | 263 | -1 | | 285 | -1 | | 286 | -1 | | 288 | -1 | | 339 | -1 | | 383 | -1 | | 387 | -1 | | 452 | -1 | +-----+--------------+ 10 rows in set (0.00 sec) mysql> select sid from oms_order limit 10; +---------+ | sid | +---------+ | 1171641 | | 1171651 | | 1171661 | | 1171671 | | 1171681 | | 1171691 | | 1171701 | | 20 | | 21 | | 63 | +---------+ 10 rows in set (0.00 sec)

欢迎大家阅读《mysql 排序规约》,跪求各位点评,by 搞代码

------解决方案--------------------

没有加 order by 的话,查出来的就是物理顺序,如果没有做过删除操作,那么应该是这样的:

select sid,order_no,order_status from oms_order limit 10;

这个肯定优先使用 sid 排序,再使用 order_no 排序

select sid,order_status from oms_order limit 10;

sid 排序

select sid from oms_order limit 10;

这个只有 sid,只好使用它排序了,看上去 sid 是字符型的数据,所以 1171701 在 20 前。

------解决方案--------------------

没有ORDER则由MYSQL自行处理顺序,而这个顺序则和记录的物理顺序,索引的顺序相关。

原创文章,转载请注明: 转载自搞代码

e7ce419cf2d6ad34d01da2ceb8829eed.png

微信 赏一包辣条吧~

023a57327877fb4402bcc76911ec18ea.png

支付宝 赏一听可乐吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值