中小企业网站制作407网站后台管理系统进不去怎么办
news/
2025/10/7 9:11:31/
文章来源:
中小企业网站制作407,网站后台管理系统进不去怎么办,wordpress的json api,微信公众平台申请入口MySQL单列索引是我们使用MySQL数据库中经常会见到的#xff0c;MySQL单列索引和组合索引的区别可能有很多人还不是十分的了解#xff0c;下面就为您分析两者的主要区别#xff0c;供您参考学习。 为了形象地对比两者#xff0c;再建一个表#xff1a; CREATE TABLE myInde…MySQL单列索引是我们使用MySQL数据库中经常会见到的MySQL单列索引和组合索引的区别可能有很多人还不是十分的了解下面就为您分析两者的主要区别供您参考学习。 为了形象地对比两者再建一个表 CREATE TABLE myIndex ( i_testID INT NOT NULL AUTO_INCREMENT, vc_Name VARCHAR(50) NOT NULL, vc_City VARCHAR(50) NOT NULL, i_Age INT NOT NULL, i_SchoolID INT NOT NULL, PRIMARY KEY (i_testID) ); 在这 10000 条记录里面 7 上 8 下地分布了 5 条 vc_Nameerquan 的记录只不过 city,age,school 的组合各不相同。 来看这条T-SQL SELECT i_testID FROM myIndex WHERE vc_Nameerquan AND vc_City郑州 AND i_Age25; 首先考虑建MySQL单列索引 在vc_Name列上建立了索引。执行 T-SQL 时MYSQL 很快将目标锁定在了vc_Nameerquan 的 5 条记录上取出来放到一中间结果集。在这个结果集里先排除掉 vc_City 不等于郑州的记录再排除 i_Age 不等于 25 的记录最后筛选出唯一的符合条件的记录。 虽然在 vc_Name 上建立了索引查询时MYSQL不用扫描整张表效率有所提高但离我们的要求还有一定的距离。同样的在 vc_City 和 i_Age 分别建立的MySQL单列索引的效率相似。 为了进一步榨取 MySQL 的效率就要考虑建立组合索引。就是将 vc_Name,vc_Cityi_Age 建到一个索引里 ALTER TABLE myIndex ADD INDEX name_city_age (vc_Name(10),vc_City,i_Age); 建表时vc_Name 长度为 50这里为什么用 10 呢因为一般情况下名字的长度不会超过 10这样会加速索引查询速度还会减少索引文件的大小提高 INSERT 的更新速度。 执行 T-SQL 时MySQL 无须扫描任何记录就到找到唯一的记录。 肯定有人要问了如果分别在 vc_Name,vc_Cityi_Age 上建立单列索引让该表有 3 个单列索引查询时和上述的组合索引效率一样吗大不一样远远低于我们的组合索引。虽然此时有了三个索引但 MySQL 只能用到其中的那个它认为似乎是最有效率的单列索引。 建立这样的组合索引其实是相当于分别建立了 vc_Name,vc_City,i_Age vc_Name,vc_City vc_Name 这样的三个组合索引!为什么没有 vc_Cityi_Age 等这样的组合索引呢这是因为 mysql 组合索引“最左前缀”的结果。简单的理解就是只从最左面的开始组合。并不是只要包含这三列的查询都会用到该组合索引下面的几个 T-SQL 会用到 SELECT * FROM myIndex WHREE vc_Nameerquan AND vc_City郑州 SELECT * FROM myIndex WHREE vc_Nameerquan 而下面几个则不会用到 SELECT * FROM myIndex WHREE i_Age20 AND vc_City郑州 SELECT * FROM myIndex WHREE vc_City郑州转载于:https://www.cnblogs.com/opps/p/5004816.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/930239.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!