彻底搞懂MySQL存储过程和函数

本文详解 MySQL 存储过程和函数的创建与管理。涵盖 DELIMITER 设置、参数定义(IN/OUT/INOUT)、变量声明与赋值、错误处理机制、Cursor 游标操作,以及 IF、LOOP、WHILE 等流程控制语句。提供完整的调用、查看、修改和删除存储对象的实用 SQL 示例。

MySQL NOT IN 子查询含 NULL 导致返回空结果的原理与解决

在 MySQL 中使用 NOT IN 进行子查询时,若子查询结果包含 NULL 值,最终查询将返回空结果。这是因为 NOT IN 底层等价于多个 != 条件的 AND 组合,而任何值与 NULL 的比较结果均为 NULL(视为 FALSE)。本文详解其底层逻辑,并提供过滤 NULL 或改用 NOT EXISTS 的可靠解决方案。

MySQL NOT IN 子查询含 NULL 导致返回空结果的原理与解决

使用MySQL函数实现ClickHouse全量导入

介绍如何在ClickHouse中通过mysql()引擎函数将MySQL表数据全量迁移至本地MergeTree表中。操作需先在MySQL创建具备SELECT和复制权限的专用账户,随后在ClickHouse执行建表语句连接远程库,成功导入后验证数据一致性。

MySQL 基础命令实操指南:服务启动与库表管理

本文详细记录 MySQL 常用基础命令,涵盖以管理员身份启动服务、使用命令行连接数据库,以及查看、创建和切换数据库的操作。同时整理了表的创建、结构查看及定义查询等高频 SQL 指令,适合初学者快速掌握数据库核心管理技能。

MySQL 基础命令实操指南:服务启动与库表管理

MySQL数据表约束设置指南

本文详细介绍如何在MySQL数据库中设置常用数据表约束。涵盖主键(PK)确保记录唯一性、外键(FK)维护表间关联、唯一约束避免重复值、非空约束强制填写以及默认值和自增属性的配置。通过创建表时定义和修改现有表两种方式,帮助开发者规范数据结构与完整性。

MySQL USING 子句详解:简化关联查询的正确姿势

在MySQL多表关联查询中,USING 子句是一种简化连接条件的语法。当参与关联的两个表拥有同名且类型相同的列时,使用 USING(column_name) 可替代冗长的 ON table1.col = table2.col。本文对比了隐式内连接、显式 JOIN ... ON 与 USING 三种写法,展示其在实现相同效果时的代码差异及注意事项。

MySQL USING 子句详解:简化关联查询的正确姿势

MySQL与Oracle元数据抽取实战:常用SQL查询指南

本文详细讲解如何从MySQL和Oracle数据库中高效抽取库、表、字段、索引等元数据。MySQL通过`information_schema`系统库进行查询,而Oracle依赖静态数据字典视图(如DBA_、USER_系列)。文中提供了针对两种数据库提取核心结构信息的完整SQL示例,帮助开发者快速完成数据字典整理与Excel导出任务。

MySQL与Oracle元数据抽取实战:常用SQL查询指南

MySQL获取表结构:列名、数据类型与备注查询方法

本文介绍了如何在MySQL中快速查看和修改数据库对象信息。通过SHOW TABLES命令获取表列表,使用DESCRIBE或SHOW COLUMNS查看单张表的列名、数据类型及注释。同时演示了如何通过information_schema系统库批量获取某数据库下所有表的元数据,以及如何使用ALTER TABLE语句安全地添加或调整唯一索引。