请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

代码第四行和第五行不是差不多吗

1、代码第四行和第五行不是差不多吗,
b.class_id=a.class_id
c.level_id=a.level_id
为什么b表就是eq_ref ,c表就是全表扫描,c表不也是有a.level_id来索引吗
2、为什么 第一个from imc_course a 就是全表扫描,第二个from a 就用到索引了呢,这不都执行的差不多吗
3、ID为2的为什么没有
join imc_class b on b.class_id=a.class_id
这一句就不用执行吗

好奇怪啊总觉得漏掉了什么很重要的知识点

正在回答 回答被采纳积分+3

4回答

提问者 慕的地8103524 2020-04-03 21:47:52

https://img1.sycdn.imooc.com/szimg/5e873e7509e639d113790282.jpg

。。。

0 回复 有任何疑惑可以回复我~
提问者 慕的地8103524 2020-04-03 14:58:36

https://img1.sycdn.imooc.com/szimg/5e86ddb009f1853b00000000.jpg

https://img1.sycdn.imooc.com//szimg/5e86ddb0091fc9ec00000000.jpg

https://img1.sycdn.imooc.com//szimg/5e86ddb00981faf909410515.jpg

https://img1.sycdn.imooc.com//szimg/5e86ddb009ba632314390606.jpg

老师三张表的具体内容都在这了


0 回复 有任何疑惑可以回复我~
  • sqlercn #1
    你分别在study_cnt列和class_name列上增加一个索引,再看一下执行计划。
    回复 有任何疑惑可以回复我~ 2020-04-03 16:52:17
  • 提问者 慕的地8103524 回复 sqlercn #2
    截图发在回答了,但是运行结果还是让人觉得很奇怪,我就觉得b表和c表性质是一样的,而且我觉得两句from a 也应该是一样的,视频里显示的是不一样的 我这儿又显示的是一样的。。。而且课程里有const查询,我用navicat就是没有,总之还是之前最开始的这123个问题我就弄不清楚
    回复 有任何疑惑可以回复我~ 2020-04-03 21:53:18
  • sqlercn 回复 提问者 慕的地8103524 #3
    1.第四行和第五行并不相同,这两处引用的表不一样。
    2.上面的查询计划中两个a表都未用到索引
    3.id为2的没有是什么意思不是很清楚
    回复 有任何疑惑可以回复我~ 2020-04-04 09:52:19
提问者 慕的地8103524 2020-04-02 23:58:50

我的运行结果跟老师的不一样。。https://img1.sycdn.imooc.com/szimg/5e860b97093b890613000594.jpg

0 回复 有任何疑惑可以回复我~
sqlercn 2020-04-02 20:32:45
  1. 这要看c 表的数据分布情况,如果查询中命中了c表的大部分数据,则MySQL优化器就不会使用索引,而是用全表扫描。

  2. 同上,要看具体的数据分布和查询条件

  3. 你看一下两个表的数据,看看 class_id相同的值里是否包括那条数据?

0 回复 有任何疑惑可以回复我~
  • 提问者 慕的地8103524 #1
    1、c level表的4条入门初级中级高级当然都是命中的呀,c 也是用到level_id的索引的
    而且我在navicat运行课程里的这段语句,结果跟老师是不一样的,class_name='MySQL'也不是常量的查询 两个FROM imc_course a都是全表扫描
    所以我原先的123个问题还是都不太明白... 我的运行截图在上面评论里了
    回复 有任何疑惑可以回复我~ 2020-04-02 23:56:10
  • sqlercn 回复 提问者 慕的地8103524 #2
    你可以把你每个表的索引和所执行的查询以及查询计划都截一下图吗?另外,MySQL由于版本不同查询优化器是会有一些不同的地方,所以执行计划不同也是有可能的。
    回复 有任何疑惑可以回复我~ 2020-04-03 10:42:38
  • 提问者 慕的地8103524 回复 sqlercn #3
    老师图片我发在上面了,麻烦了
    回复 有任何疑惑可以回复我~ 2020-04-03 14:58:49
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信