数据库优化 - 多列索引经典题目

题目

假设某个表有一个联合索引(c1,c2,c3,c4)一下——只能使用该联合索引的c1,c2,c3部分

A where c1=x and c2=x and c4>x and c3=x

B where c1=x and c2=x and c4=x order by c3

C where c1=x and c4= x group by c3,c2

D where c1=x and c5=x order by c2,c3

E where c1=x and c2=x and c5=? order by c2,c3

创建表,并创建相应索引,插入数

 

对于A:

c1=x and c2=x and c4>x and c3=x  <==等价==> c1=x and c2=x and c3=x and c4>x

因此 c1,c2,c3,c4都能用上. 如下:

 

对于B:

select * from t4 where c1=1 and c2=2 and c4=3 order by c3

c1 ,c2索引用上了,在c2用到索引的基础上,c3是排好序的,因此不用额外排序.

而c4没发挥作用.

 

如果用c5排序,因为c5不是索引,所以,要额外用到filesort进行排序

对于 C:

只用到c1索引,因为group by c3,c2的顺序无法利用c2,c3索引

 

D语句:

C1确定的基础上,c2是有序的,C2之下C3是有序的,因此c2,c3发挥的排序的作用.

因此,没用到filesort

 

E:

这一句等价与 elect * from t4 where c1=1 and c2=3 and c5=2 order by c3;

因为c2的值既是固定的,参与排序时并不考虑

 

 

转载于:https://www.cnblogs.com/meidang/p/7461985.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/572027.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站设计规范

网站不同于移动应用&#xff1a; 屏幕适配&#xff08;屏幕尺寸、分辨率&#xff09;。 交互方式不同&#xff0c;鼠标相对手指具备更精准的点击范围&#xff0c;有更多的控件状态。 在设计网站原型时&#xff0c;并没有具体的控件大小和条栏规范&#xff0c;需要注意相关设计…

产品设计七大定律

Alan Cooper&#xff08;交互设计之父&#xff09;&#xff1a;除非有更好的选择&#xff0c;否则就遵从标准。 许多设计准则都基于人类心理学&#xff1a;人们如何感知、学习、推理、记忆&#xff0c;以及把意图转换为行动。 菲茨定律&#xff1a; 菲茨定律用来预测某点到目…

插入网站连接_带你了解网站设计的五个基本步骤

网站制作设计并不是一件简单的事情&#xff0c;一个好的网站不但里面包含的内容要全面&#xff0c;而且还要能够持续运转&#xff0c;为我们带来流量。下面简单为大家介绍一下网站设计的基本步骤&#xff0c;希望能够帮助大家更好的了解网站建设。网站设计1、站点定位确定网站的…

内容型的产品该怎么做?

内容产品&#xff1a; 什么是内容型产品&#xff1a;以图文、视频/直播、音频等形式提供服务的产品形态。 例&#xff1a;抖音、快手、微博、今日头条、知乎、得到… 内容产品的发展&#xff1a; 内容产品生态&#xff1a; 内容产品用户角色及职责&#xff1a; 内容模型&#x…

复杂电路简化经典例题_一天搞定考试系列之电路原理(3)

经过了前两章对阅读理解学习法的实践运用&#xff0c;想必大家知道该怎么做了&#xff0c;至于效果&#xff0c;我不敢保证对每个人都有效&#xff0c;欢迎大家实践后给予反馈&#xff0c;大家一起寻找更好的方法。下面进入第三章&#xff0c;需要说明的是前两章虽然简单但是很…

【前端】Github Pages 与域名关联简明教程

Github Pages 与域名关联简明教程 1. 向你的 Github Pages 仓库添加一个CNAME(一定要*大写*)文件 其中只能包含一个顶级域名&#xff0c;像这样&#xff1a; example.com如果你是用 hexo 框架搭建博客并部署到 Github Pages 上&#xff0c;每次 > hexo g > hexo d 后会把…

怎么把东西去掉修图_很多人花几千块学习商业修图,其实跟把钱扔了一样。?...

很多人花几千块学习商业修图&#xff0c;其实跟把钱扔了一样。我所说的商业修图是指那些杂志、明星修图&#xff0c;很多人觉得修杂志、明星就是大师&#xff0c;就非常厉害&#xff0c;其实商业修图重要的不是技术&#xff0c;而是资源、圈子&#xff1b;大部分人看作品也不是…

算法入门经典-第七章 例题7-2最大乘积

最大乘积 输入n个元素组成的序列s&#xff0c;你需要找出一个乘积最大的连续子序列。如果这个最大的成绩不是正数&#xff0c;应输入-1&#xff08;表示无解&#xff09;。输入0结束输入。1<n<18,-10<Si<10。 样例输入&#xff1a; 3 2 4 -3 样例输出&#xff1a; …

h5页面生成图片分享到微信js_html2canvas 动态生成微信分享海报的优质js库

如何把网页上的内容用javascript来实现截图&#xff1f;今天分享的html2canvas就可以。介绍在微信项目中经常会遇到动态生成海报的需求&#xff0c;Web前端合成图片往往会使用canvas。canvas虽然强大&#xff0c;但用来合成海报非常繁琐&#xff0c;一不小心就几百行代码了。而…

expires为session_面试必问:session,cookie和token的区别

点击上方蓝字关注我们 !session&#xff0c;cookie和token究竟是什么简述cookie&#xff0c;session&#xff0c;token作为面试必问题&#xff0c;很多同学能答个大概&#xff0c;但是又迷糊不清&#xff0c;希望本篇文章对大家有所帮助http是一个无状态协议什么是无状态呢&…

测试用例设计方法 - 场景分析法

现在的软件几乎都是用事件触发来控制流程的。象GUI软件、游戏等。事件触发时的情景并形成了场景&#xff0c;而同一事件不同的触发顺序和处理结果就形成了事件流。这种在软件设计方面的思想可以引入到软件测试中&#xff0c;可以生动地 描绘出事件触发时的情景&#xff0c;有利…

Lucene第一讲——概述与入门

一、概述 1.什么是Lucene? Lucene是apache下的一个开源的全文检索引擎工具包。 它为软件开发人员提供一个简单易用的工具包&#xff08;类库&#xff09;&#xff0c;以方便的在目标系统中实现全文检索的功能。 2.能干什么&#xff1f; 主要运用&#xff1a;全文检索 3.全文检…

(一)svn介绍

项目管理中的版本控制问题 通常软件开发由多人协作开发,如果对代码文件、文档等没有进行版本控制&#xff0c;将会出现很多问题&#xff1a; 备份多个版本&#xff0c;占用磁盘空间大解决代码冲突困难容易引发BUG难于恢复至以前正确版本无法进行权限控制项目版本发布困难什么是…

训练不出结果_训练赛惨败SKT?FPX直播透露拿冠军原因!Karsa再谈离开RNG?

都说人逢喜事精神爽&#xff0c;小凤凰拿了世界冠军当然更爽。一回国就开启了快乐直播&#xff0c;人均阴阳怪气&#xff0c;信息量巨大&#xff0c;让我们一起来康康吧&#xff01;“刘青松赢了装自己很淡定&#xff0c;其实耳机里叫得最大声。”“把林炜翔冠军奖牌给大家抽了…

linux ns级定时器_预热 | 万众期待的单片机、Linux二合一的STM32MP157开发板亮相

STM32mp157 GUI操作体验视频GUI架构简介支持多种应用场景的HMI2.0应用&#xff0c;根据应用的类型将整个UI分为五个大类&#xff1a;多媒体&#xff0c;智能家电&#xff0c;卫生医疗&#xff0c;公共服务&#xff0c;系统。均支持于100ask_stm32mp157_pro硬件开发平台&#x…

Spring加载properties文件的两种方式

在项目中如果有些参数经常需要修改&#xff0c;或者后期可能需要修改&#xff0c;那我们最好把这些参数放到properties文件中&#xff0c;源代码中读取properties里面的配置&#xff0c;这样后期只需要改动properties文件即可&#xff0c;不需要修改源代码&#xff0c;这样更加…

c++2010修复不了_汽车凹痕太小修复不了?汽车无痕修复是骗局还是技术不行?...

前段时间在网上看到一个推荐搜索说汽车凹痕太小修复不了&#xff0c;又是一个不知道从哪传出来的谣言。只听说过汽车凹陷变形太厉害修复不了的&#xff0c;没听说过凹陷的太小而修复不了的。但是我转念一想&#xff0c;能被搜索推荐说明搜遇到这个问题的人还挺多的&#xff0c;…

ege限制鼠标移动的函数_浅谈函数节流和函数防抖

什么是函数节流和函数防抖&#xff1f;下面本篇文章就来给大家浅谈一下函数节流和函数防抖。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对大家有所帮助。前言事件的触发权很多时候都属于用户&#xff0c;有些情况下会产生问题&#xff1a;向后台发…

〖Demo〗-- HAproxy配置文件操作

【HAproxy配置文件操作】 要求 1. 根据用户输入输出对应的backend下的server信息2. 可添加backend 和sever信息3. 可修改backend 和sever信息4. 可删除backend 和sever信息5. 操作配置文件前进行备份6 添加server信息时&#xff0c;如果ip已经存在则修改;如果backend不存在则创…

centos调整页面大小_这2种方法都能调整PDF文档的纸张大小

PDF文件大家都很熟悉了&#xff0c;在工作中是经常会遇到的&#xff0c;但是想对PDF文件进行修改和编辑的可能很多人都觉得为难。比如当你在阅读PDF文件时&#xff0c;发现PDF文档的页面尺寸不是自己想要的尺寸&#xff0c;要如何修改PDF的纸张大小呢&#xff1f;以下介绍2种简…