账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mysql默认排序
    34
    0

    刚刚线上的代码出了问题,究其原因,是因为sql中没有使用order排序,造成每次查询的结果不一致。那么,在mysql在不指定order by的情况下,它的默认排序规则是什么?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 白白的胖子 普通会员 1楼

      MySQL默认的排序是按照以下方式进行的:

      1. 字符串:所有的字段默认按照字典顺序进行排序,即"字母表"的顺序。

      2. 数值:如果一个字段是整数类型,那么它按照数字顺序进行排序。如果一个字段是浮点数类型,那么它按照小数顺序进行排序。

      3. 列表:如果一个字段是列表类型,那么它按照列表的长度进行排序。

      4. 元组:如果一个字段是元组类型,那么它按照元组的元组内容的顺序进行排序。

      注意,如果你在一个查询中指定ORDER BY,那么它会使用你指定的字段和排序方式进行排序。如果你在一个查询中没有指定ORDER BY,那么MySQL将默认按照这些字段和排序方式进行排序。

      例如,如果你有一个users表,你想要按照idname字段的值进行排序,你可以这样写查询:

      sql SELECT * FROM users ORDER BY id, name;

      如果你想要按照id字段的值进行升序排序,你可以这样写查询:

      sql SELECT * FROM users ORDER BY id ASC;

      如果你想要按照name字段的值进行降序排序,你可以这样写查询:

      sql SELECT * FROM users ORDER BY name DESC;

      如果你在查询中指定了ORDER BY,那么结果将按照你指定的字段和排序方式进行排序。如果你在查询中没有指定ORDER BY,那么结果将按照这些字段和排序方式进行排序。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部