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

株洲网站建设的公司怎么找沧州seo包年优化软件排名

株洲网站建设的公司怎么找,沧州seo包年优化软件排名,常宁网站建设,群晖wordpress中文背景 对mysql的联合索引的考察是Java程序员面试高频考点!必须深刻理解掌握否则容易丢分非常可惜。 技术难点 考察对最左侧匹配原理理解。 原理 暂且不表。网上讲这非常多。我理解就是,B树每个非叶子节点的值都是有序存放索引的值。 比如对A、B、C …

背景

对mysql的联合索引的考察是Java程序员面试高频考点!必须深刻理解掌握否则容易丢分非常可惜。

技术难点

考察对最左侧匹配原理理解。

原理

暂且不表。网上讲这非常多。我理解就是,B+树每个非叶子节点的值都是有序存放索引的值。

比如对A、B、C 三个字段做联合索引。B+输每个节点都存储A、B、C的值。首先保证A有序其次保证B有序。

重点看实战。

实战

我们做一次实战记录,避免下次面试再次犯错。

环境

mysql版本 5.7.38-log

建表语句

CREATE TABLE `user_cart_item` (`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',`user_id` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',`goods_id` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '商品id',`goods_sku_id` bigint(20) unsigned NOT NULL DEFAULT '0' COMMENT '商品id 有skuid的话为什么要存商品id',`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '物品篮项目创建时间',`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '物品篮项目更新时间',`sku_price` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '价格',PRIMARY KEY (`id`) USING BTREE,KEY `idx_user_cart_item` (`user_id`,`goods_id`,`goods_sku_id`) USING BTREE
) ENGINE=InnoDB  DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='物品篮项';

视代码可见我们创建一个联合索引 idx_user_cart_item

查询

 查询条件是user_id、goods_id、goods_sku_id,一定能匹配上索引没问题

EXPLAIN SELECTuser_id,goods_id, goods_sku_id,sku_price
FROMuser_cart_item 
WHEREuser_id=248 and goods_id = 1 and goods_sku_id = 1

结果如下: 

 查询条件是user_id、goods_id,一定能匹配上索引没问题

EXPLAIN SELECTuser_id,goods_id, goods_sku_id,sku_price
FROMuser_cart_item 
WHEREuser_id=248 and goods_id = 1 

结果如下:

 查询条件是user_id,一定能匹配上索引没问题

EXPLAIN SELECTuser_id,goods_id, goods_sku_id,sku_price
FROMuser_cart_item 
WHEREuser_id=248 

结果如下:

查询条件是user_id,goods_sku_id ,按最左侧匹配原则也是能使用索引

EXPLAIN SELECTuser_id,goods_id, goods_sku_id,sku_price
FROMuser_cart_item 
WHEREuser_id=248 and goods_sku_id = 1 

 结果如下:

查询条件是goods_sku_id 看能否使用索引

EXPLAIN SELECTuser_id,goods_id, goods_sku_id,sku_price
FROMuser_cart_item 
WHEREgoods_sku_id = 1 

结果如下:

重点

不满足最左侧匹配是不能使用联合索引的。

特殊情况不满足最左侧匹配也能使用联合索引

EXPLAIN SELECTuser_id,goods_id, goods_sku_id
FROMuser_cart_item 
WHEREgoods_sku_id = 1 

结果如下:

索引类型不是ref,而是index。是在索引范围内查找。甚过All 全表扫描

重点

当联合索引能覆盖查询字段(覆盖索引)。但查询条件并不满足最左侧匹配原则。mysql查询优化器也推荐我们使用联合索引。但索引是index。 也就是索引内查找。

http://www.ysxn.cn/news/1177.html

相关文章:

  • 开个网站需要什么长沙网站推广有哪些啊
  • 宝塔做网站安全吗seo技术外包 乐云践新专家
  • 企业图标设计图案大全长沙优化网站哪家公司好
  • 遵义制作公司网站的公司seo工具查询
  • 安徽网站开发目前在哪个平台做推广好
  • 网站建设业务好做吗代写文章质量高的平台
  • 网站备案名字要怎么写html底部友情链接代码
  • 公司oa办公平台seo主要做哪些工作
  • 网站开发 占位符站长之家域名查询官网
  • 广州网络营销公司排名seo的主要工作内容
  • 1元购网站怎么做企业查询官网入口
  • 水头网站建设seo教学实体培训班
  • 蚌埠网站设计怎么让网站快速收录
  • 广东网站建设软件怎样做百度推广网页
  • 免费网站程序网络营销策略ppt
  • 黄浦区做网站网络推广教程
  • 封装系统如何做自己的网站合肥seo网站排名优化公司
  • Wordpress 学校网站怎么发外链
  • 合肥市建设网站全球网站排名查询
  • 平板怎么做网页南昌seo招聘信息
  • 网站建设推广优化排名中文域名注册管理中心
  • 网站后台自动退出枫树seo网
  • 沙坪坝网站建设哪家好网站建设服务
  • WordPress邀请码功能企业网站seo方案
  • 中国最大的建材网站成都seo优化公司排名
  • 手机app网站制作seo外链自动群发工具
  • 网站建设私单电商广告
  • 企业做网站的费用账务如何处理最新国内新闻50条简短
  • 广东制冷设备网站建设费用专业搜索引擎seo技术公司
  • 上海网站建设 建站猫国外网站推广平台有哪些