为了账号安全,请及时绑定邮箱和手机立即绑定

为何两次输出的结果排序不同?

http://img1.sycdn.imooc.com//57f4b36d00017eb408001066.jpg

如图,为毛两次的输出结果排序不一样?

然后我执行下面的数据插入操作结果就奇了个怪↓↓↓↓↓

http://img1.sycdn.imooc.com//57f4b48600014fdc08001066.jpg

有哪位大神来解析一下???

正在回答

3 回答

排序不同首先是因为你第二次使用了order by ,至于第一次默认查询未按主键排序这个我恐怕没法给你解答,毕竟都是在看视频的新手,我试了半天也不能得到你搜索的那种结果.百度了一下,大神们说这个和表的格式以及系统缓存相关,有兴趣你可以百度去看看; 第二个问题写入数据不明白的话,你可以把命令分开来看.其中 SELECT id,username FROM users 这句很明显就是你第一次使用的默认顺序查询,看你第一次查询的结果就可以得出结论,写入从结果中的第四行开始的三个数据.也就是你最后得到的那个结果.

0 回复 有任何疑惑可以回复我~

直接插入,就是你第一张图的情况,按username那一列的排序结果去执行。要想按id的排序去执行,必须在LIMIT前加入ORDER BY id 排序。

0 回复 有任何疑惑可以回复我~

我觉得应该先给id排个序,再用LIMIT,这样直接插入的话我看着也晕

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
与MySQL的零距离接触
  • 参与学习       396886    人
  • 解答问题       3353    个

本课程涵盖全部MySQL数据库的基础,学习MySQL数据库的基础知识

进入课程

为何两次输出的结果排序不同?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信