MySQL

MySQL8.0+ row_number() 函数:行添加序号

在MySQL中,row_number() 函数用于为结果集中的行分配连续序号,即返回每行在分区内的连续编号。其语法格式如下:row_number()over(partitionbyexprorderbyexpr)--返回行的连续序号row_number()函数是一个窗口函数,用于为结果集中的每一行分配一

MySQL now() 函数:获取当前日期时间

在MySQL中,now() 函数用于获取当前日期时间,即返回系统当前的日期和时间值。其语法格式如下:now()--返回当前日期时间now()函数不需要任何参数,直接返回当前的日期时间值(格式:YYYY-MM-DD HH:MM:SS)。值得注意的是,now() 总是返回当前的系统日期时间,不受其他参数影响。下面,我们将使用now()函数获取当前日期时间:selectnow()

MySQL concat() 函数:字符串拼接

在MySQL中,concat(str1, str2, ...) 函数用于连接多个字符串,即返回所有参数字符串连接后的结果。其语法格式如下:concat(str1,str2,...)--返回连接后的字符串concat()函数根据多个参数字符串将它们按顺序连接成一个新的字符串。值得注意的是,concat(NULL, str) 的返回值是NULL;而concat(数字

MySQL二进制日志详解与数据恢复

一、二进制日志基础查看二进制日志配置查看二进制日志状态SHOWVARIABLESLIKE'log_bin%';查看当前二进制日志文件SHOWMASTERSTATUS;查看所有二进制日志文件SHOWBINARYLOGS;&nbsp

如何理解MySQL里的字符集和校对规则?

校对规则(Collation)是字符集内部定义的字符比较与排序规则。一个字符集可对应多种校对规则,且拥有一个默认规则。字符集与校对规则彼此依存,共同作用:字符集决定数据存储编码,校对规则决定数据比较逻辑。在字符集与校对规则的设计上,不同数据库存在理念差异。SQL Server 等数据库将二者耦合,选择字符集即隐含确定了其默认的校对规则。而 MySQL 则采用了显式解耦的设计,允许对字符集和校对规则

MySQL 修改存储过程

一、 `ALTER PROCEDURE` 的语法与用途1. 基本语法ALTER PROCEDURE procedure_name [characteristic ...]2. 可修改的特征(characteristic)这些特征主要用于提供元数据信息,帮助 MySQL 和开发者理解存储过程的行为,某些特征(如 `SQL SECURITY`)也具有实际的安全影响。

MySQL 交叉连接(CROSS JOIN)

基本概念1. 笛卡尔积数学概念:两个集合X和Y的笛卡尔积是所有可能有序对(x,y)的集合数据库应用:两个表的每一行都与另一个表的每一行组合2. 交叉连接特点返回左表与右表的完全组合不使用任何连接条件结果集行数 = 表1行数 × 表2行数语法格式标准语法SELECT 字段列表 FROM 表1 CROSS

MySQL InnoDB 存储引擎深度解析

InnoDB 是 MySQL 最主流的事务型存储引擎,自 MySQL 5.5 版本起成为默认存储引擎。以下是关于 InnoDB 的全面讲解:一、核心特性1. ACID 事务支持 完全符合原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)&nb

SQL书写规范指南

作为SQL初学者,养成良好的书写习惯非常重要。以下是必须遵守的核心书写规则,能帮你避免90%的语法错误:1. 语句结束标记必须用英文分号结尾:`;`类比:中文用句号,英文用句点,SQL用分号示例: SELECT * FROM users; -- 正确 SELECT * FROM users