月度归档: 2022 年 2 月

9 篇文章

索引失效
like失效 like 以%开头,索引无效;当like前缀没有%,后缀有%时,索引有效。表 city 字段设置有索引。 mysql> EXPLAIN SELECT * FROM `t` WHERE `city` LIKE '%州' LIMIT 0,1000; +----+-…
MySQL删除操作
DML和DDL的区别 DML(Data Manipulation Language)数据操纵语言,对数据库中的数据进行一些简单操作,如insert、delete、update、select等。DML操作是可以手动控制事务的开启、提交和回滚的。 DDL(Data Definition Language…
InnoDB重建表
MyISAM -rw-r----- 1 polkitd input 8556 Mar 26 11:08 test.frm // 存储表定义 -rw-r----- 1 polkitd input 0 Mar 26 11:08 test.MYD // 存储数据 -rw-r----- 1 polkitd …
InnoDB的存储结构
索引组织表 在InnoDB存储引擎中,表都是根据主键顺序组织存放的,这种存储方式的表称为索引组织表(index organized table)。 在InnoDB存储引擎表中,每张表都有个主键(Primary Key),如果在创建表时没有显式地定义主键,则InnoDB存储引擎会按如下方式选择或创建主…
一条SQL更新语句是如何执行的?
前面我们系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块。相信你还记得,一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。 那么,一条更新语句的执行流程又是怎样的呢? 如果要将 ID=2 这一行的值加 1,SQL 语句就会这么写: upda…
一条SQL查询语句是如何执行的?
MySQL数据库作为优秀的关系型开源数据库,受到所有人的青睐,我们日常工作中,和其打交道的次数十分频繁,那么你知道我们在写sql的时候,MySQL内部是如何执行的吗?接下来我们就一起探讨一下吧。 MySQL 基本架构 以这条sql语句为例: select * from T where ID=10; …
git undo操作
撤销已经推送到远程的变更 场景 你已经执行git push,把你的修改推送到远程的仓库,现在你意识到之前推送的commit中有一个有些错误,想要撤销该commit。 方案 git revert <SHA> 原理 git revert 会创建一个新的commit,它和指定SHA对应的com…
offset的优化探索
前言 首先明确 limit 和 offset 的使用方式: limit y 表示: 读取 y 条记录 limit x, y 表示: 跳过 x 条记录,读取 y 条记录 limit y offset x 表示: 跳过 x 条记录,读取 y 条记录 准备 SELECT COUNT(*) as coun …
Byte和bit的区别
bit:位 (小写b) 也称比特 是英文 binary digit的缩写 二进制数系统中,每个0或1就是一个位(bit) 位是数据存储(计算机中信息)的最小单位 计算机中的CPU位数指的是CPU一次能处理的最大位数。例如32位计算机的CPU一次最多能处理32位数据 Byte:字节(大写B) 8bit…