当前位置: 首页 > news >正文

阜宁网站制作服务商就在刚刚武汉宣布最新消息

阜宁网站制作服务商,就在刚刚武汉宣布最新消息,做视频网站要申请什么许可证,网站建设人才调研如何看一条SQL语句的执行好坏? MySQL提供了自带的工具Explain可以查看sql语句的执行好坏。 explain主要的列: 1:type:这一列表示MySQL决定如何查找表中的行,查找数据行记录的大概范围。 有 system const eq_ref ref…

如何看一条SQL语句的执行好坏?

MySQL提供了自带的工具Explain可以查看sql语句的执行好坏。
explain主要的列:

1:type:这一列表示MySQL决定如何查找表中的行,查找数据行记录的大概范围。

有 system const eq_ref ref range index all几个级别,一般来说,要让查询达到range及以上级别。
  system:表中只有一条数据,且存储引擎可以准确的统计到这条数据。system一般出现在MyISAM、memory类型的表查询中。由于我们一般使用的存储引擎都是InnoDB,所以system这种类型很少会用到。
  const:通过主键或者唯一索引等值查询来定位一条数据。
  eq_ref:在进行多表连接查询时,被驱动表通过主键或唯一索引键进行等值查询。例如
select * from t1 left join t2 on t1.id = t2.id;, t1是全表扫描,但是t2是eq_ref。
  ref:普通二级索引等值查询。
  range:命中索引时,查询某一个范围内的结果。
  index:全索引扫描。
  all:全表扫描

2:possible_keys:这一列显示查询可能使用哪些索引来查找。

3:key:这一列显示mysql实际采用哪个索引来优化对该表的访问。

:4:key_len:这一列显示了mysql在索引里使用的字节数,通过这个值可以算出具体使用了索引中的哪些列。

5:Extra:额外信息, 重要值如下:

  Using index:使用覆盖索引
  Using index condition:使用了索引下推。
  Using filesort:使用文件排序而不是索引排序。

索引最佳实践/平常如何使用索引/

1:使用联合索引遵循最左前缀法则。
2:不在索引列上做任何操作,例如计算、函数、自动或者手动类型转换。
3:尽量使用覆盖索引,减少select *。
4:mysql在使用!= 或者 <> 会导致索引失效。
5:不要使用以%通配符开头的查询。
6:注意隐式转换,例如 select * from emp where name = 1000; name会自动转化为数字,导致索引失效。
7:or的左右字段都要是索引字段。
8:order by语句使用索引最左前列或者与where条件列满足最左前缀法则,否则会文件排序。

如何优化sql语句:

1:尽量使用覆盖索引,减少select , 个人觉得覆盖索引很重要,因为例如 select * from tmp where age > 3; mysql可能会觉得符合条件的数据太多,导致会大量回表,索引最终不会走索引。
2:范围查询优化:例如select * from emp where age >= 1 and age <= 100; 可能不会走索引,因为符合条件的太多了,可以把单个范围查询语句拆分为多个。
3:分页查询优化:例如select * from emp order by name limit 90000, 5; name有索引,但是这个语句大概率不会走索引,而且是文件排序,因为回表代价太大,不如全表扫描。1:让其走索引,select id from emp order by name limit 90000, 5; 之后将这个表作为一个临时表,和select * from tmp 做inner join。
优化为select * from emp e inner join (select id form emp order by name limit 90000, 5) tmp on tmp.id=e.id
4:联表查询,小表驱动大表,关联字段加索引。
5:count(
)优化,在mysql自己维护行记录数,用事务保证计算正确,在redis维护,但是可能不是很准,show table states可以查看大概的行数。

索引设计法则

1:代码先行,索引后上。
2:联合索引尽量覆盖条件。
3:区分度不大的字段不要创建索引。
4:长字符串我们可以采用前缀索引。
5:where与order by冲突时优先where,where先筛选出一部分数据在排序。
6:后台监控慢sql,基于慢sql做特定的索引优化。
7:主要思想:利用一两个复杂的多字段联合索引,抗下80%的查询,碎玉剩余的20%查询建立一两个辅助查询。

http://www.hkea.cn/news/410100/

相关文章:

  • 如何做微信ppt模板下载网站企业网页设计公司
  • 做b2b网站百度点击快速排名
  • 网站怎么做移动图片不显示不出来吗芭嘞seo
  • 旅游网站建设服务器ip域名解析
  • 企业网站建设三个原则百度指数资讯指数是指什么
  • 房地产集团网站建设方案软文文案案例
  • 阜蒙县建设学校网站是什么北京seo编辑
  • 珠海建设局网站十大经典事件营销案例分析
  • 创建网站开发公司互联网推广引流是做什么的
  • 万盛集团网站建设seo网站推广全程实例
  • 做教育的网站需要资质吗网站怎么开发
  • 微网站怎么做滚动中国万网域名注册官网
  • 个人如何免费建网站seo在线优化工具 si
  • 双线主机可以做彩票网站吗网络推广合作协议
  • 做外贸的b2b网站域名批量查询系统
  • 建设网站需要哪些职位网站建设策划书
  • 苏州网站建设哪里好网站点击排名优化
  • 网站建设收费标准策划百度推广关键词越多越好吗
  • 网站怎么做更新吗如何建立网页
  • 国外建设工程招聘信息网站tool站长工具
  • 专业做相册书的网站电商网站建设制作
  • 银川网站开发公司电话东莞网
  • 环境保护局网站管理制度建设百度指数的主要功能有
  • 安装wordpress提示500错误关键词优化的策略有哪些
  • 企业网站建设公司排名深圳高端seo公司助力企业
  • 做网站套餐网站seo
  • 网站上的代码网页怎么做的下载百度软件
  • 网站功能模块建设搜狗推广
  • 网站做推广有用吗网站页面设计
  • 做简报的网站广州搜发网络科技有限公司