MySQL

MySQL修改数据库

基本概念1. 数据库的字符集和校对规则是存在`db.opt`文件里的2. 可以用`ALTER DATABASE`命令来修改这些设置修改语法ALTER DATABASE [数据库名] { [DEFAULT] CHARACTER SET <字符集名> | [DEFAULT] COLL

MySQL bit_count() 函数:二进制数1

在MySQL中,bit_count(n) 函数用于计算整数的二进制表示中1的个数,即返回整数的二进制表示中设置为1的比特位数量。其语法格式如下:bit_count(n)--返回整数二进制中1的个数bit_count()函数是一个位函数,用于计算整数的二进制表示中比特位为1的数量。值得注意的是,bit_count()函数接受整数参数,返回该整数二进制表示中1的个数;如果输入为NULL,则

MySQL8.0+ dense_rank() 函数:行排名

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

MySQL unix_timestamp() 函数:获取UNIX时间戳

在MySQL中,unix_timestamp() 函数用于获取UNIX时间戳,即返回从1970-01-01 00:00:00 UTC到现在的秒数。其语法格式如下:unix_timestamp()--返回当前UNIX时间戳unix_timestamp()函数不需要任何参数,直接返回当前的UNIX时间戳值。下面,我们将使用unix_timestamp()函数获取UNIX时间戳:select

MySQL insert() 函数:插入/替换指定位置的子串

在MySQL中,insert(str, pos, len, newstr) 函数用于替换字符串的指定部分,即从字符串str的位置pos开始,长度为len的子串替换为newstr。其语法格式如下:insert(str,pos,len,newstr)--返回替换后的字符串insert()函数根据参数对字符串进行替换操作:原字符串str,起始位置pos,替

MySQL慢查询日志

慢查询日志是 MySQL 中最核心的性能诊断工具,用于记录执行时间超过指定阈值的 SQL 语句,帮助开发者和 DBA 定位性能瓶颈。一、查看慢查询日志状态在优化之前,首先检查当前慢查询日志的配置状态。查看慢查询日志是否开启及日志文件位置SHOWVARIABLESLIKE'slow_query_log%';查看慢

如何对默认字符集和校对规则进行修改?

MySQL 具备显著的字符集灵活性,区别于 Oracle 等多数数据库管理系统通常仅支持统一字符集的限制,其可在同一服务器、数据库、甚至同一张表的不同字段中配置不同字符集。同时,MySQL 的字符集与校对规则支持服务器、数据库、表、字段四个层级的默认设置,各层级设置位置不同,分别作用于对应范围的字符存储与比较逻辑。如何查看服务器字符集和校对规则:输入:SHOWVARIABLES&nbs

MySQL 存储函数

一、存储函数 vs. 存储过程特性 存储函数 (FUNCTION) 存储过程 (PROCEDURE) 返回值 必须通过 `RETURN` 语句返回一个值 可以通过 `OUT`/`INOUT` 参数返回零个或多个值,但没有直接返回值 核心用途 计算并返回一个结果 执行复杂的业务逻辑操作(如增删改、事务管理

MySQL 外连接(OUTER JOIN)

外连接类型对比连接类型关键字保留表结果特点左外连接LEFT [OUTER] JOIN左表包含左表所有记录 + 右表匹配记录右外连接RIGHT [OUTER] JOIN右表包含右表所有记录 + 左表匹配记录全外连接FULL [OUTER] JOIN两表MySQL不直接支持,需用UNION实现左外连接(LEFT JOIN)基本语法SELECT 字段列表FROM 左表LEFT [

MySQL 主键

主键约束是数据库设计中最重要的约束之一,您已经提供了非常全面的介绍。下面我将对主键约束进行系统性的总结和补充,并优化内容结构:主键约束核心特性1. 唯一标识:主键值必须唯一标识表中的每一行记录2. 非空性:主键列不允许为NULL值3. 单一性:每个表只能有一个主键约束4. 索引自动创建:主键会自动创建聚集索引(在InnoDB中)主键类型详解单字段主键定义方式一:在列定义时直