![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 80
MySQL、Oracle
TPH-BETTER
不要低估时间
展开
-
面试集锦——MySQL
索引覆盖就是⼀个SQL在执行时,可以利用索引来快速查找,并且此SQL所要查询的字段在当前索引对应的字段中都包含了,那么就表示此SQL走完索引后不用回表了,所需要的字段都在当前索引的叶子节点上存在,可以直接作为结果返回了。当⼀个SQL想要利用索引是,就⼀定要提供该索引所对应的字段中最左边的字段,也就是排在最前面的字段,比如针对a,b,c三个字段建立了⼀个联合索引,那么在写⼀个sql时就⼀定要提供a字段的条件,这样才能用到联合索引,这是由于在建立a,b,c三个字段的联合索引时,底层的B+树是按照a,b,c三个字原创 2022-07-09 10:23:26 · 198 阅读 · 0 评论 -
Like是否走索引
先说结论:只要like后需要匹配的字段前加%,索引就会失效。但是后面加%,能使用索引。1. 匹配字段前后都加%,索引失效Test case:结果:Test case:结果:Test case 3:**注意:**上面这个表实际上已经索引覆盖了所有字段,因为非聚集索引叶子节点存的就是 索引值 加 主键, 下面例子 中的select * 实际上查的就是四个覆盖的字段Test case 1、Test case 2、Test case 3分别测试匹配字段前后都加%、匹配字段前加%、**匹配字段后加%*转载 2022-06-04 16:59:05 · 8033 阅读 · 1 评论 -
MySQL索引专项(一)
B树和B+树之间的区别是什么?B树特点:节点排序(节点的左边都比节点小,节点的右边都比节点大)⼀个节点了可以存多个元素,多个元素也排序了插入8个元素时的B树:B+树B+树是B树的加强版特点:拥有B树的特点叶⼦节点之间有指针(双向指针,图中有误)⾮叶⼦节点上的元素在叶⼦节点上都冗余了,也就是叶⼦节点中存储了所有的元素,并且排好顺序插入8个元素时的B+树:Innodb中的B+树是怎么产生的?查询得到一页的大小为16KB,Innodb每次都是以页为单位从磁盘里读数据或者存数原创 2022-05-01 17:59:01 · 704 阅读 · 0 评论 -
DROP TABLE、TRUNCATE TABLE和DELETE的区别
转自https://blog.csdn.net/csgyl/article/details/80952183一、相同点:TRUNCATE TABLE和DELETE都可以删除整个数据库表的记录。二、不同点:DELETEDML语言可以回退可以有条件的删除DELETE FROM 表名 WHERE 条件TRUNCATE TABLEDDL语言无法回退默认所有的表内容都删除删除速度比delete快TRUNCATE TABLE 表名DROP TABLE用于删除表(表的结构、属性以及转载 2022-05-03 16:27:20 · 1567 阅读 · 0 评论