您的位置:首页 > 汽车 > 新车 > 创意设计网站_深圳市营销策划有限公司_网络销售怎么找客户_链接下载

创意设计网站_深圳市营销策划有限公司_网络销售怎么找客户_链接下载

2024/11/20 13:18:39 来源:https://blog.csdn.net/weixin_42840717/article/details/143729328  浏览:    关键词:创意设计网站_深圳市营销策划有限公司_网络销售怎么找客户_链接下载
创意设计网站_深圳市营销策划有限公司_网络销售怎么找客户_链接下载

EXPLAIN之select_type

  • 题记
  • select_type

题记

  • 书接上文《 EXPLAIN之ID》
  • 2024美国大选已定,川普剑登上铁王座,在此过程中出谋划策的幕僚很重要,是他们决定了最终的执行计划
  • 在《查询成本之索引选择》中提到,explain的输出,就是优化器(幕僚)选择的执行计划
  • 除了SELECT开头的查询,DELETE、INSERT、UPDATE也都有执行计划,这里只关注SELECT
  • 从输出的计划中可见很多字段,传达了什么样的信息,接下来看select_type

select_type

  • 一条sql语句可包含多个select关键字, select_type标记每个小查询扮演了什么

  • SIMPLE

    • 没有子查询,普通不过如此
      • select * from ucoding where k1 = 'Td621'
        在这里插入图片描述
    • 可以有JOIN连接,但不通过UNION连接
      • select * from ucoding JOIN icoding on k1 = i_k1 where mark = 'Td621'
        在这里插入图片描述
  • PRIMARY

    • 包含UNIONUNION ALL, 由几个小查询组成,标记最左边的查询为PRIMARY
      • select * from ucoding where k3 ='tt'union select * from icoding where i_k3 ='tt'
        在这里插入图片描述
    • 包含子查询,由几个小查询组成,标记最左边的查询为PRIMARY
      • 子查询在条件中
      • select * from ucoding where k1 in (SELECT i_k1 from icoding ) or k3 = 'a'
        在这里插入图片描述
      • 子查询在输出字段中
      • select * , (SELECT i_k1 from icoding WHERE i_k1 = ut.k1 ) from ucoding ut
        在这里插入图片描述
  • UNION

    • 包含UNIONUNION ALL,除了最左边,其余标记UNION
      • select * from ucoding where k3 ='tt' union select * from icoding where i_k3 ='tt'
        在这里插入图片描述
  • UNION RESULT

    • UNION使用临时表进行去重,标记临时表的查询为UNION RESULT,参考上图介绍
  • SUBQUERY

    • 这简单,无非就是select查询穿插在一个“”select中(非union连接 )
      • select * from ucoding where k1 in (SELECT i_k3 from icoding WHERE i_mark= 'tt' )
        在这里插入图片描述
      • 一看傻眼了,我的子查询呢!!!,凌乱
        在这里插入图片描述
    • 官方是这样说的
      • 包含子查询的查询sql无法转为对应的半连接形式
      • 并且子查询是不相关子查询
      • 而且查询优化器决定将子查询物化来执行该子查询
    • 接下来的领域,非无矩境的夫子才可踏入,尔等怎能看清这道法天象
      在这里插入图片描述
    • 所以,我等退下,现在知道了有这种情况即可

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com