MySQL

向MySQL发送请求时,MySQl会发生什么?

在《明白了MySQL内部结构才能成为高手!》里我们对MySQL框架有了一定的了解。现在让我们看看数据库收到请求后会发生什么?1.建立连接与验证:1.1客户端与MySQL服务器建立TCP连接。1.2服务器验证用户的登录权限。2.查询解析与优化2.1服务器为该连接创建一个工作线程。2.2线程解析SQL语句,检查其语法和语义是否正确。2.3优化器生成执行计划,决定获取数据的最优路径(例如,选择哪个索引)

MySQL 逻辑运算符

逻辑运算符是 SQL 中用于组合或修改条件表达式的关键工具,它们返回布尔值(TRUE=1,FALSE=0)或 NULL。以下是 MySQL 中四种逻辑运算符的详细说明和使用方法。一、逻辑非运算符(NOT / !)基本规则反转操作数的逻辑值`NOT 0` 返回 1`NOT 非零值` 返回 0`NOT NULL` 返回 NULL&

MySQL found_rows() 函数:获取上一查询匹配的行数

在MySQL中,found_rows() 函数用于获取上一查询匹配的行数,即返回前一个SELECT语句在不使用LIMIT时匹配的总行数。其语法格式如下:found_rows()--返回上一查询匹配的行数found_rows()函数是一个信息函数,用于返回前一个SELECT语句如果没用LIMIT限制时应该返回的总行数。值得注意的是,found_rows()函数需要与SQL_CALC_FO

MySQL max() 函数:求列最大值

在MySQL中,max(expr) 函数用于获取指定列的最大值,即返回查询结果集中某列的最大值。其语法格式如下:max(expr)--返回指定列的最大值max()函数是一个聚合函数,用于统计查询结果集中某列的最大值。该列可以是数值类型、日期类型或字符串类型。值得注意的是,max() 函数会忽略NULL值;如果所有值都是NULL或结果集为空,则返回NULL。这里准备了一张dotcpp_u

MySQL8.0+ regexp_substr() 函数:正则表达式提取子串

在MySQL中,regexp_substr(str, pattern) 函数用于提取正则表达式匹配的子串,即返回字符串中匹配正则表达式模式的第一个子串。其语法格式如下:regexp_substr(str,pattern)--返回正则表达式匹配的第一个子串regexp_substr()函数根据两个参数进行提取操作:原字符串str,正则表达式模式pattern。返回匹配正则模式

MySQL cos() 函数:计算数值的余弦值

在MySQL中,cos(x) 函数用于计算 x 的余弦值,即返回角度 x 的余弦函数结果。其语法格式如下:cos(x)--返回x的余弦值cos()函数根据参数 x 的数值计算余弦值,其中 x 为弧度值。值得注意的是,cos(NULL) 的返回值是NULL;而cos('字符串'),cos() 函数会尝试将字符串转换为数值,如果转换成功,返回对应的余弦值;如果转换失败,则返

什么是MySQL的热备份(在线备份),我们该怎样恢复?

当你在因为冷备份而需要关闭mysql服务而感到繁琐时,其实我们还能选择热备份!那什么是热备份呢?热备份是在数据库运行状态下实施的在线备份方案,能够在确保业务连续性的同时完成数据保护。根据数据提取方式的不同,热备份主要分为两类:逻辑备份(通过SQL语句形式导出数据)和物理备份(直接复制底层数据文件)。1.逻辑备份逻辑备份的核心优势在于其存储引擎无关性,可采用统一方法备份不同引擎的表,极大

一张表格让你彻底学会MySQL锁机制中的三种核心锁类型!

什么是锁机制?锁机制是数据库管理系统(DBMS)的核心并发控制手段,用于在多个事务同时访问和修改数据时,维护数据的一致性和完整性。其核心思想是:当某个事务访问数据资源时,根据操作类型(读或写)先对数据加锁,从而防止其他事务进行冲突操作,直到该事务释放锁。这确保了并发事务能够“有序”地访问数据,避免产生脏读、不可重复读、幻读等问题。不同的数据库锁(如行锁、表锁)和不同的锁模式(如共享锁、排他锁)共同

索引是否也会存在不会被引用的情况?

索引可以提高查询速度,但并不是每个带有索引的查询都使用到了索引,存在特殊情况下索引没有被使用的情况。本节将详细介绍3种索引没有被使用的特殊情况。一、使用LIKE查询:使用 LIKE 关键字进行查询时,如果匹配字符串的第一个字符为“%”,索引不会被使用。举个例子:我们可以先查询一张表,这里查询dotcpp_user表:为了进行对比,我们先为hobby字段创建索引:CREATEINDEX&

MySQL LIKE 模糊查询

基本语法SELECT 字段列表FROM 表名WHERE 字段名 [NOT] LIKE '模式字符串';通配符详解1. 百分号 `%` - 匹配任意多个字符(包括0个)使用场景:查找以'T'开头的名字SELECTnameFROMstudentsWHEREnameLIKE&n