MySQL

MySQL8.0+ lead() 函数:跳下几行访问

在MySQL中,lead(expr, n) 函数用于访问后续行的数据,即返回当前行后面第n行的值。其语法格式如下:lead(expr,n)over(partitionbyexprorderbyexpr)--返回后续行的值lead()函数是一个窗口函数,用于访问结果集中当前行后面的指定行的数据

MySQL month() 函数:提取日期的月份

在MySQL中,month(date) 函数用于提取日期的月份部分,即返回日期中的月份数值(1-12)。其语法格式如下:month(date)--返回日期的月份month()函数根据日期参数提取其中的月份部分,返回1到12的整数值。值得注意的是,month(NULL) 的返回值是NULL;而month('字符串'),如果字符串无法转换为有效的日期格式,month() 函

MySQL upper() 函数:字符串转大写

在MySQL中,upper(str) 函数用于将字符串 str 转换为大写形式,即返回字符串的大写版本。其语法格式如下:upper(str)--返回字符串的大写形式upper()函数根据参数字符串将其中的所有小写字母转换为大写字母。值得注意的是,upper(NULL) 的返回值是NULL。下面,我们将对不同的字符串和数值进行大写转换:selectupper('dot

MySQL如何设置日志输出方式

MySQL的普通查询日志和慢查询日志支持两种输出方式:写入日志文件或写入数据表(位于mysql系统库中)。启用相应日志功能后,可配置输出至文件、数据表,或同时输出到两者。打开客户端命令行,先查看日志输出类型:SHOWVARIABLESLIKE'%log_out%';结果:日志输出类型是FILE.要想在运行时更改日志输出目标,可以在启动服务器时,设

小白数据库入门

一、学习MySQL需要多长时间? 学习MySQL的时间取决于目标深度和实践强度,大致可分为以下几个阶段: 阶段时间核心能力可担任工作基础入门1~2周掌握SQL语法(增删改查)、简单表设计数据查询、基础报表开发进阶实战1~2个月索引优化、事务控制、复杂查询(JOIN/子查询)业务系统数据库开发、CRUD优化高级优化3~6个月执行计划分析、锁机制、分库分

MySQL选择哪种字符集最合适?

数据库字符集的选择对数据存储效率、处理性能及系统后续的移植与推广均具有关键影响,这一问题在 MySQL 及其他主流数据库中普遍存在。由于字符集决定了数据库可存储的字符范围,若创建数据库时未结合实际需求(如多语言支持、特殊符号存储等)选择合适字符集,后期更换不仅操作成本高(需涉及数据备份、格式转换、业务中断等),还可能因编码不兼容导致数据丢失或乱码风险。因此,建议在应用设计初期即明确字符集需求并完成

MySQL 存储程序中的变量

一、变量的定义 (DECLARE)语法:DECLARE var_name [, var_name2, ...] data_type [DEFAULT default_value];关键点:位置要求:`DECLARE` 语句必须放在 `BEGIN ... END` 块的开头,并且在所有其他可执行语句之前。默认值:如果未使用 `DEFAULT` 子句,变量的初始值为 `NULL`。作用域:

MySQL 正则表达式

基本语法SELECT 列名 FROM 表名 WHERE 列名 REGEXP '正则表达式';常用元字符元字符说明示例匹配示例^匹配开头'^J'John, Jane$匹配结尾'y$'Lily, Henry.匹配任意单个字符'b.t'bit, bat, but*匹配前一个字符0次或多次'ab*c'a

MySQL 外键约束

外键约束核心概念基本定义主表(父表):被引用的表,包含主键从表(子表):包含外键的表,引用主表的主键参照完整性:确保外键值必须匹配主表中存在的值或为NULL外键约束规则1. 主表必须存在且已定义主键2. 外键列和主键列数据类型必须兼容3. 外键列允许NULL值(除非明确设置NOT NULL)4. 外键列和主键列的数目必须相同5. InnoDB存储引擎支持外键(MyISAM不

使用Visio设计E-R图与数据库模型图

一、绘制E-R图(Chen's表示法)1. 启动模板 打开Visio 2013 → 选择「软件」分类 → 双击「数据库Chen's表示法」 (若无此模板,需安装Visio数据库模板包)*2. 核心操作 添加实体:从左侧形状栏拖拽「实体」图形到画布