摘要: 1、数据类型 MySQL 的数据类型有大概可以分为 5 种,分别是整数类型、浮点数类型和定点数类型、日期和时间类型、字符串类型、二进制类型等。 1) 数值类型 整数类型包括: 类型占用空间有符号取值范围无符号取值范围描述 TINYINT 1 字节 -128 到 127 0 到 255 小范围整数,如 阅读全文
posted @ 2025-11-19 16:25 chao_xiong 阅读(9) 评论(0) 推荐(0)
摘要: 1、SQL语句执行顺序 SQL 语句的书写顺序和实际执行顺序是不同的。 书写顺序 SELECT FROM WHERE GROUP BY HAVING ORDER BY LIMIT / OFFSET 逻辑执行顺序: FROM :确定查询的数据源(表、视图、子查询等)。 ON(如果涉及 JOIN):应用 阅读全文
posted @ 2025-11-19 16:00 chao_xiong 阅读(3) 评论(0) 推荐(0)
摘要: 1、约束条件 约束是应用于表列或整个表的规则,用于限制可以存入的数据类型。如果存在违反约束的数据行为,该行为会被数据库阻止。 约束类型关键字作用是否允许 NULL 主键约束 PRIMARY KEY 唯一标识每一行,不允许重复和空值,一张表只能有一个主键(可由多列组成,称为复合主键) ❌ 不允许 唯一 阅读全文
posted @ 2025-11-19 15:51 chao_xiong 阅读(7) 评论(0) 推荐(0)
摘要: 1、IF NOT EXISTS 是一个条件判断子句,用于在执行操作(如创建表、插入数据等)之前检查目标对象或记录是否已经存在。 如果不存在,则执行操作; 如果已存在,则跳过操作而不报错。 目的是: 避免重复操作导致的错误(如“对象已存在”异常) 提升脚本的幂等性(多次运行结果一致,安全可靠) 简化逻 阅读全文
posted @ 2025-11-19 15:48 chao_xiong 阅读(7) 评论(0) 推荐(0)
摘要: 1、MINUS 运算符 用于返回在第一个查询结果中存在,但在第二个查询结果中不存在的行。 必须 所有 SELECT 出的列组合都不在第二结果集中才保留。 MySQL 不支持 MINUS 或 EXCEPT。 -- Oracle 风格: SELECT column_list FROM table1 MI 阅读全文
posted @ 2025-11-19 15:39 chao_xiong 阅读(5) 评论(0) 推荐(0)
摘要: 1、 INTERSECT 返回 两个select查询结果集的交集,即同时出现在两个 SELECT 语句结果中的行。 INTERSECT(以及 UNION、EXCEPT)比较的是“列的位置和值”,而不是“列名”。只要列的数量相同、对应位置的数据类型兼容,就可以比较 —— 列名完全无关! 自动去重 是按 阅读全文
posted @ 2025-11-19 15:32 chao_xiong 阅读(5) 评论(0) 推荐(0)
摘要: 1、UNION 是 SQL 中用于 合并多个查询结果集 的集合运算符。它将两个或多个 SELECT 语句的结果纵向拼接成一个结果集,并自动去除重复行(UNION ALL 不去重)。 SELECT column1, column2, ... FROM table1 UNION [ALL] -- 合并两 阅读全文
posted @ 2025-11-19 15:11 chao_xiong 阅读(9) 评论(0) 推荐(0)
摘要: 1、CUBE 是 GROUP BY 子句的一个扩展,用于生成一个结果集,该结果集显示了所选列中所有可能的 组合 的聚合(以及总计)。 它本质上是 ROLLUP 的超集,能生成更全面的分组集合。 为指定的列生成所有可能的分组组合,包括小计和总计。 SELECT col1, col2, ..., agg 阅读全文
posted @ 2025-11-19 14:59 chao_xiong 阅读(4) 评论(0) 推荐(0)
摘要: 1、ROLLUP 是GROUP BY子句的扩展,用于生成包含小计和总计的超级聚合行。 自动为指定列的层级结构生成多个级别的聚合结果,包括从最细粒度到最粗粒度(总计)的所有组合。 SELECT 列1, 列2, 聚合函数(列3) FROM 表名 GROUP BY 1、 (列1, 列2, 列3); -- 阅读全文
posted @ 2025-11-19 14:52 chao_xiong 阅读(5) 评论(0) 推荐(0)
摘要: 1、GROUPING SETS 用于在单个查询中同时按多种不同的分组方式,并将结果合并成一张表。避免写多个 UNION ALL 查询。 它被 PostgreSQL、SQL Server、Oracle、Snowflake 等主流数据库支持(MySQL 不支持)。 指定多个“分组方案”,SQL 引擎会分 阅读全文
posted @ 2025-11-19 14:30 chao_xiong 阅读(12) 评论(0) 推荐(0)
摘要: 1、limit 子句返回指定的行数据 限制 SELECT 语句返回的行数。 命令: select 字段名 from 表名 LIMIT offset, row_count; -- offset:偏移量,跳过前多少行,从offset + 1 行开始取;row_count:行数, 要返回多少行 limit 阅读全文
posted @ 2025-11-19 09:51 chao_xiong 阅读(4) 评论(0) 推荐(0)
摘要: 1、AS 设置别名 是一个可选的关键字,用于给列(字段)、表 或 子查询 指定一个别名(Alias)。它的主要作用是: 提高 SQL 语句的可读性 简化复杂表达式的引用 在自连接或子查询中区分同名对象 语法: -- 列别名 SELECT column_name AS alias_name FROM 阅读全文
posted @ 2025-11-19 09:25 chao_xiong 阅读(5) 评论(0) 推荐(0)