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

怎么做seo网站推广网站设计时多页面切换时什么控件

怎么做seo网站推广,网站设计时多页面切换时什么控件,免实名域名购买,中国少数民族网站建设主博客#xff1a; 【MySQL精通之路】SQL优化(1)-CSDN博客 上一篇#xff1a; 【MySQL精通之路】SQL优化(1)-查询优化(2)-范围查询优化-CSDN博客 下一篇#xff1a; 目录 1.索引合并-交集访问算法 2.索引合并联合访问算法 3.索引合并-排序联合访问算法 4.影响索引合…主博客 【MySQL精通之路】SQL优化(1)-CSDN博客 上一篇 【MySQL精通之路】SQL优化(1)-查询优化(2)-范围查询优化-CSDN博客 下一篇 目录 1.索引合并-交集访问算法 2.索引合并联合访问算法 3.索引合并-排序联合访问算法 4.影响索引合并优化 Index Merge访问方法检索具有多个范围扫描的行并将其结果合并为一个。 博主PS。 没有索引合并逻辑之前 数据库在where条件查询数据时如果a条件查询完成后a条件过滤出的主键去聚簇索引查找数据(回表查询。b条件c条件同理。 最后在通过查询条件之间是and还是or对结果进行过滤如果是and就取交集如果是or就取并集。 索引合并后 就提前做这个操作了。先把二级索引上过滤出的主键根据查询条件是and还是or取交集或并集。得出过滤后的主键之后再用过滤后的主键进行回表查询大大减少回表次数。 此查询仅合并来自单个表的索引扫描而不合并跨多个表的扫描。合并可以生成其基础扫描的并集、交集或交集的并集。 博主PS。之所以不可以跨表是因为最终回表查询的时候要将过滤后的主键在同一个聚簇索引进行回表所以不能跨表跨表就等于在多个聚簇索引操作数据了。 可以使用索引合并的查询示例 SELECT * FROM tbl_name WHERE key1 10 OR key2 20;SELECT * FROM tbl_nameWHERE (key1 10 OR key2 20) AND non_key 30;SELECT * FROM t1, t2WHERE (t1.key1 IN (1,2) OR t1.key2 LIKE value%)AND t2.key1 t1.some_col;SELECT * FROM t1, t2WHERE t1.key1 1AND (t2.key1 t1.some_col OR t2.key2 t1.some_col2); 注意 索引合并优化算法具有以下已知限制 如果您的查询带有嵌套AND或OR复杂WHERE子句并且MySQL没有选择最佳计划请尝试使用以下标识转换来分发术语 (x AND y) OR z (x OR z) AND (y OR z) (x OR y) AND z (x AND z) OR (y AND z) 索引合并不适用于全文索引。 在EXPLAIN输出中Index Merge方法在type列中显示为Index_Merge。 在这种情况下键列包含使用的索引列表key_len包含这些索引的最长键部分列表。 Index Merge访问方法有几种算法显示在EXPLAIN输出的Extra字段中 Using intersect(...) Using union(...) Using sort_union(...) 以下部分将更详细地描述这些算法。优化器根据各种可用配置的成本估计在不同可能的索引合并算法和其他访问方法之间进行选择。 1.索引合并-交集访问算法 当WHERE子句与AND组合转换为不同键上的几个范围条件时此访问算法适用并且每个条件都是以下条件之一 这种形式的N部分表达式其中索引正好有N部分即所有索引部分都被覆盖 key_part1 const1 AND key_part2 const2 ... AND key_partN constN InnoDB表主键上的任何范围条件。 例如 SELECT * FROM innodb_tableWHERE primary_key 10 AND key_col1 20;SELECT * FROM tbl_nameWHERE key1_part1 1 AND key1_part2 2 AND key2 2; 索引合并交集算法对所有使用的索引执行同时扫描并生成从合并索引扫描中接收的行的交集。 如果查询中使用的所有列都被使用的索引覆盖则不会检索完整的表行不会回表查询在这种情况下EXPLAIN输出在Extra字段中包含Using index。 以下是这样一个查询的示例 SELECT COUNT(*) FROM t1 WHERE key1 1 AND key2 1; 如果使用的索引没有覆盖查询中使用的所有列则只有在满足所有使用键的范围条件时才会检索完整的行。 如果合并的条件之一是InnoDB表主键上的条件则不用于行检索而是用于过滤使用其他条件检索的行。 2.索引合并联合访问算法 此算法与索引合并-联合算法的类似。当表的WHERE子句被转换为不同键上的几个范围条件并与OR组合时该算法适用并且每个条件都是以下条件之一 1.这种形式的N部分表达式其中索引正好有N部分即所有索引部分都被覆盖 key_part1 const1 OR key_part2 const2 ... OR key_partN constN 2.InnoDB表主键上的任何范围条件。 3.索引合并交集算法适用的条件。 例如 SELECT * FROM t1WHERE key1 1 OR key2 2 OR key3 3;SELECT * FROM innodb_tableWHERE (key1 1 AND key2 2)OR (key3 foo AND key4 bar) AND key5 5; 3.索引合并-排序联合访问算法 当WHERE子句转换为OR组合的多个范围条件时此访问算法适用但索引合并联合算法不适用。 示例 SELECT * FROM tbl_nameWHERE key_col1 10 OR key_col2 20;SELECT * FROM tbl_nameWHERE (key_col1 10 OR key_col2 20) AND nonkey_col 30; 排序联合算法和联合算法之间的区别在于排序联合算法必须首先获取所有行的行ID并在返回任何行之前对其进行排序。 4.影响索引合并优化 索引合并的使用取决于optimizer_switch系统变量的index_merge, index_merge_intersection、index_merge_union, index_merge_sort_union标志的值。 参见“可切换优化”。 默认情况下所有这些标志都处于启用状态。 若要仅启用某些算法请将index_merge设置为禁用并仅启用应允许的其他算法。 除了使用optimizer_switch系统变量来控制优化器在整个会话范围内使用索引合并算法之外MySQL还支持优化器提示以在每条语句的基础上影响优化器。 参见“优化器提示”。
http://www.hkea.cn/news/14258059/

相关文章:

  • 做教育行业营销类型的网站百度竞价推广什么意思
  • 网站域名空间怎么弄啊wordpress 中国
  • 网站建设的电话线上电商怎么做
  • 在线教育网站怎样建设精通网站建设
  • 网站设计注册托管公司是怎么托管的
  • 展厅设计图效果图大全济南seo网络优化公司
  • 网站建设禁止谷歌收录的办法学网络工程好找工作吗
  • 中英文网站多少钱电子商务网站有那些功能
  • 淘宝返利网站怎么做的如何建设公司网站 需要注意什么
  • 国外html5网站源码flash属于网页制作平台吗
  • 有哪些企业网站平台一个完整网页的制作案例
  • 博客网站建设上海网络科技有限公司排名
  • 智慧团建网站入口官网湖南省建设厅李云
  • 文山城乡建设部网站首页wordpress不能自定义
  • sjz住房建设局网站wordpress清理
  • 网站建设遇到哪些攻击医院网站建设预算表
  • 个人备案网站放视频微信公众号网址
  • 为什么要在南极建站青岛北方现货交易平台代理
  • 国外的建筑设计网站简洁的网站建设合同
  • 做阿里网站需要的faq定制开发 商城网站 最快
  • 高端建站属于外包公司么上海网页制作服务商
  • 广西城乡建设部网站首页网站建设业动态
  • 许昌知名网站建设价格广州汽车网站建设
  • 新网站内部优化怎么做wordpress 头部 微博
  • 国外学校网站设计星宿网站建设
  • 男的和女的做那种短视频网站用电脑怎么做原创视频网站
  • 志愿服务网站开发网站建设与实践高自考
  • 建设银行江西分行官方网站南京seo公司
  • 重庆seo网站排名优化做网站保存什么格式最好
  • 网站建设分金手指排名十四网站建设 300元