MySQL 入门教程
  • 教程目录
  • 第一章 基础教程
    • 第一节 入门
      • 1.1 安装
      • 1.2 示例数据库
    • 第二节 查询数据
      • 2.1 SELECT 语句
      • 2.2 SELECT DISTINCT 语句
    • 第三节 过滤数据
      • 3.1 WHERE 子句
      • 3.2 AND 运算符
      • 3.3 OR 运算符
      • 3.4 IN 运算符
      • 3.5 BETWEEN 运算符
      • 3.6 LIKE 运算符
      • 3.7 LIMIT 子句
      • 3.8 IS NULL 运算符
    • 第四节 数据排序
      • 4.1 ORDER BY 子句
      • 4.1 自然排序
    • 第五节 连接表
      • 5.1 别名
      • 5.2 INNER JOIN
      • 5.3 LEFT JOIN
      • 5.4 自连接
      • 5.5 CROSS JOIN
    • 第六节 分组数据
      • 6.1 GROUP BY子句
      • 6.2 HAVING 子句
    • 第七节 子查询,派生表和通用表达式
      • 7.1 子查询
      • 7.2 派生表
      • 7.3 公共表表达式
      • 7.4 递归 CTE
    • 第八节 集合操作符
      • 8.1 UNION 和 UNION ALL
      • 8.2 INTERSECT 模拟
    • 第九节 修改数据
      • 9.1 INSERT 语句
      • 9.2 INSERT IGNORE
      • 9.3 UPDATE 语句
      • 9.4 UPDATE JOIN 语句
      • 9.5 DELETE
      • 9.6 ON DELETE CASCADE.
      • 9.7 DELETE JOIN
      • 9.8 REPLACE 语句
      • 9.9 PREPARE 语句
    • 第十节 事务
      • 10.1 事务介绍
      • 10.2 表锁定
    • 第十一节 管理数据库和表
      • 11.1 数据库管理
      • 11.2 MySQL 表类型
      • 11.3 CREATE TABLE
      • 11.4 序列
      • 11.5 ALTER TABLE
      • 11.6 重命名表
      • 11.7 从表中删除列
      • 11.8 向表中添加新列
      • 11.9 删除表
      • 11.10 临时表
      • 11.11 TRUNCATE TABLE
    • 第十二节 索引
      • 12.1 管理索引
      • 12.1 UNIQUE 索引
    • 第十三节 数据类型
      • 13.1 INT
      • 13.2 DECIMAL
      • 13.3 BIT
      • 13.4 BOOLEAN
      • 13.5 CHAR
      • 13.6 VARCHAR
      • 13.7 TEXT
      • 13.8 DATE
      • 13.9 TIME
      • 13.10 DATETIME
      • 13.11 TIMESTAMP
      • 13.12 JSON
      • 13.13 ENUM
    • 第十四节 约束
      • 14.1 NOT NULL 约束
      • 14.2 主键约束
      • 14.2 外键约束
      • 14.4 UNIQUE 约束
      • 14.5 CHECK 约束
    • 第十五节 全球化
      • 15.1 字符集
      • 15.2 校对规则
    • 第十六节 导入和导出
      • 16.1 导入 CSV 文件
      • 16.2 导出为 CSV
  • 第二章 技巧
    • CTE 简介
    • 递归 CTE
    • 邻接列表模型和层次结构
    • 获取行数
    • 比较表
    • 找重复值
    • 删除重复行
    • UUID 和主键
    • 复制表数据
    • 变量
    • 生成列
    • 连续行比较
    • 更改存储引擎
    • 基于正则表达式的搜索
    • row_number 模拟
    • 随机选择记录
    • 选择第 n 个最高纪录
    • 重置自动增量值
    • MariaDB 与 MySQL 比较
    • 间隔
    • NULL 详细和应用
    • 获取今天的日期
    • 将NULL值映射到有意义的值
    • 注释
  • 第三章 存储过程
    • 简介
    • 入门
    • 变量
    • 参数
    • 返回多个值
    • IF语句
    • CASE语句
    • IF和CASE语句的技巧
    • 循环
    • 游标
    • 列出存储过程
    • 错误处理
    • SIGNAL 和 ESIGNAL 语句
    • 存储函数
  • 第四章 触发器
    • 实现
    • 创建
    • 创建多个触发器
    • 管理
    • 计划事件
    • 修改事件
  • 第五章 视图
    • 简介
    • 实现和限制
    • 创建
    • 可更新视图
    • 确保视图一致性
    • 检查选项子句
    • 管理
  • 第六章 全文搜索
    • 简介
    • 定义索引
    • 自然语言全文搜索
    • 布尔全文搜索
    • 查询扩展
    • ngram全文解析器
  • 第七章 函数
  • 第八章 管理
    • 访问控制系统入门
    • 创建用户
    • 授予权限
    • 撤销权限
    • 角色管理
    • 删除用户
    • 维护数据库表
    • 备份数据库
    • 列出数据库
    • 列出表
    • 列出表的列
    • 列出用户
Powered by GitBook
On this page
  • 第 1 节 入门
  • 第 2 节 查询数据
  • 第 3 节 过滤数据
  • 第 4 节 排序数据
  • 第 5 节 连接表
  • 第 6 节 分组数据
  • 第 7 节 MySQL 子查询,派生表和通用表达式
  • 第 8 节 使用 SET 操作符
  • 第 9 节 修改 MySQL 中的数据
  • 第 10 节 MySQL 事务
  • 第 11 节 管理 MySQL 数据库和表
  • 第 12 节 MySQL 索引
  • 第 13 节 MySQL 数据类型
  • 第 14 节 MySQL 约束
  • 第 15 节 MySQL 全球化
  • 第 16 节 MySQL 导入和导出

Was this helpful?

第一章 基础教程

Previous教程目录Next第一节 入门

Last updated 5 years ago

Was this helpful?

这个 MySQL 基础教程解释一些基本的 SQL 语句。 如果这是您第一次使用关系数据库管理系统,本教程将为您提供使用 MySQL 数据库服务器所需的一切内容,例如查询数据,更新数据,管理数据库和创建表。

如果您已经熟悉其他关系数据库管理系统(如 ,或 Microsoft SQL Server 等),则可以使用本教程来刷新您的知识,并了解 MySQL 的 SQL 方言与其他数据库系统的不同之处。

第 1 节 入门

本节将开始介绍和学习使用 MySQL。我们将开始安装 MySQL,下载并将数据导入到 MySQL 服务器以进行练习。

  • - 演示如何在计算机上安装 MySQL 数据库服务器。

  • - 介绍一个名称为yiibaidb的 MySQL 示例数据库,提供下载示例数据库及 ER 图。

  • - 演示如何将示例数据库 (yiibaidb) 导入到 MySQL 数据库服务器中进行练习。

第 2 节 查询数据

本节将帮助您了解如何从 MySQL 数据库服务器查询数据。 我们将从一个简单的SELECT语句开始,从单个表查询数据。

  • - 显示如何使用简单的 SELECT 语句来查询单个表中的数据。

  • - 了解如何在SELECT语句中使用DISTINCT运算符来消除结果集中的重复行。

第 3 节 过滤数据

  • - 学习如何使用WHERE子句根据指定的条件过滤行记录。

  • - 介绍如何使用AND运算符以组合布尔表达式以形成用于过滤数据的复杂条件。

  • - 介绍OR运算符,并展示如何将OR运算符与AND运算符组合以过滤数据。

  • - 学习如何在WHERE子句中使用IN运算符来确定值是否匹配列表或子查询中的指定值。

  • - 显示如何使用BETWEEN运算符来根据指定范围查询数据。

  • - 提供基于特定模式匹配查询数据的技术示例,以执行一些模糊查询。

  • - 使用LIMIT来限制SELECT语句返回的行数

  • - 使用IS NULL运算符测试值是否为NULL。

第 4 节 排序数据

第 5 节 连接表

第 6 节 分组数据

第 7 节 MySQL 子查询,派生表和通用表达式

第 8 节 使用 SET 操作符

第 9 节 修改 MySQL 中的数据

在本节中,将学习如何使用各种MySQL语句来在表上执行插入,更新和删除数据操作。

第 10 节 MySQL 事务

第 11 节 管理 MySQL 数据库和表

本节介绍如何管理 MySQL 中最重要的数据库对象,包括数据库和表。

第 12 节 MySQL 索引

第 13 节 MySQL 数据类型

第 14 节 MySQL 约束

第 15 节 MySQL 全球化

第 16 节 MySQL 导入和导出

- 显示如何使用ORDER BY子句排序结果集。还将介绍使用FIELD函数的自定义排序顺序。

- 通过使用ORDER BY子句,演示 MySQL 中的各种自然排序技术。

- 引入别名,包括表别名和列别名,以提高复杂查询的可读性,并避免在查询具有相同列名称的多个表中的数据时发生歧义错误。

- 应用内部联接技术来查询来自多个相关表的数据。

- 学习如何使用左连接来生成包含来自连接左侧表中的行的结果集,并使用NULL值来补充不匹配行。

- 学习如何使来自多个表的行的笛卡尔乘积。

– 使用表别名将表连接到自身,并使用其他类型的连接(如INNER JOIN或LEFT JOIN)连接同一表中的行记录。

- 学习如何根据列或表达式将行记录分组到子组。

- 按特定条件过滤组。

- 学习如何在另一个查询(外部查询)中嵌套另一个查询语句(内部查询),并使用内部查询的结果值作为外部查询条件。

- 介绍派生表概念,并演示如何使用它来简化复杂查询。

- 解释通用表表达式概念,并向您展示如何使用 CTE 查询表中的数据。

- 演示如何使用递归通用表表达式 (CTE) 遍历分层数据。

- 使用UNION和UNION ALL操作符将两个或多个多个SELECT语句的结果集合合并到一个结果集中。

- 显示了几种模拟MySQL中INTERSECT运算符的方法。

- 学习如何使用各种形式的INSERT语句将数据插入到数据库表中。

- 解释将数据行插入到表中并忽略导致错误或异常的行的INSERT IGNORE语句。

- 了解如何使用UPDATE语句及其选项来更新数据库表中的数据。

- 显示如何使用带有INNER JOIN和LEFT JOIN的UPDATE JOIN语句执行交叉表更新。

- 学习如何使用DELETE语句从一个或多个表中删除数据。

- 学习如何从父表中删除数据时,使用外部键从DELETE CASCADE引用动作删除子表中的数据。

- 学习如何从多个表中删除数据。

- 学习如何插入或更新数据,这取决于数据是否存在于表中。

- 显示如何使用PREPARE语句执行查询。

- 了解MySQL事务,以及如何使用COMMIT和ROLLBACK来管理MySQL中的事务。

- 了解如何使用MySQL锁来协调会话之间的表访问。

- 学习各种语句来管理 MySQL 数据库,包括创建新数据库,删除现有数据库,选择数据库以及列出所有数据库。

- 了解每个表类型的功能至关重要,以便您可以有效地使用它们来最大限度地提高数据库的性能。

- 学习如何使用CREATE TABLE语句在数据库中创建新表。

- 学习如何使用序列为表的主键列自动生成唯一的数字。

- 学习如何使用ALTER TABLE语句来更改现有表的结构。

- 演示如何使用RENAME TABLE语句重命名表。

- 学习如何使用ALTER TABLE DROP COLUMN语句从表中删除一个或多个列。

- 学习如何使用ALTER TABLE ADD COLUMN语句向现有表添加一个或多个列。

- 学习如何使用DROP TABLE语句删除现有表。

- 讨论MySQL临时表,并学习如何管理临时表。

- 学习如何使用TRUNCATE TABLE语句删除表中的所有数据。

- 学习如何使用 MySQL 索引,以及如何利用索引来加快数据检索。

- 显示如何使用UNIQUE索引来强制一个或多个列的值的唯一性。

- 学习 MySQL 中的各种数据类型,以便您可以在设计数据库表时有效应用它们。

- 学习如何使用整数数据类型。并演示如何使用ZEROFILL和整数列的宽度属性。

- 学习如何使用DECIMAL数据类型存储十进制格式的精确值。

- 介绍BIT数据类型以及如何在 MySQL 中存储位值。

- 学习 MySQL 如何通过内部使用TINYINT(1)来处理布尔值。

- 学习如何使用存储固定长度字符串的CHAR数据类型。

- 提供VARCHAR数据类型的基本指南。

- 演示如何使用TEXT数据类型存储文本数据。

- 介绍DATE数据类型,并显示一些日期功能来有效处理日期数据。

- 学习TIME数据类型的功能,并向您演示如何使用一些有用的时间功能来处理时间数据。

- 介绍DATETIME数据类型和一些有用的函数来操作日期时间值。

- 介绍TIMESTAMP类型及其功能,调用自动初始化和自动更新,允许您为表定义自动初始化和自动更新的列。

- 显示如何使用 JSON 数据类型来存储 JSON 文档。

- 了解如何正确使用ENUM数据类型来存储枚举值。

- 引入NOT NULL约束,并显示如何为列定义NOT NULL约束或将NOT NULL约束添加到现有列。

- 指导如何使用主键约束来创建表的主键。

- 学习外键概念,并逐步显示如何创建和删除外键。

- 显示如何使用UNIQUE约束来强制表中列或一组列的值的唯一性。

- 通过各种方式来模拟 MySQL 中的CHECK约束。

- 本教程讨论 MySQL 字符集,并演示如何对字符集执行各种操作。

- 本教程讨论了 MySQL 排序规则,并向您展示了如何为 MySQL 服务器,数据库,表和列设置字符集和排序规则。

- 演示如何使用LOAD DATA INFILE语句将 CSV文件导入 MySQL 表。

- 学习如何将 MySQL 表导出为 CSV 文件格式的各种技术。

PostgreSQL
Oracle
示例数据库
安装MySQL数据库服务器
下载MySQL示例数据库
将示例数据库导入到MySQL数据库服务器中
SELECT 语句
SELECT DISTINCT 语句
WHERE
AND 运算符
OR 运算符
IN 运算符
BETWEEN 运算符
LIKE
LIMIT 子句
IS NULL
ORDER BY
使用 ORDER BY 子句进行自然排序
MySQL 别名
INNER JOIN
LEFT JOIN
CROSS JOIN
自连接
GROUP BY 子句
HAVING 子句
MySQL 子查询
MySQL 派生表
MySQL 通用表表达式
递归 CTE
UNION 和 UNION ALL
INTERSECT 模拟
INSERT 语句
INSERT IGNORE
UPDATE 语句
UPDATE JOIN 语句
DELETE
ON DELETE CASCADE
DELETE JOIN
REPLACE 语句
PREPARE 语句
MySQL事务
MySQL表锁定
MySQL 数据库管理
MySQL 表类型
CREATE TABLE
MySQL 序列
ALTER TABLE
重命名表
从表中删除列
向表中添加新列
删除表
MySQL 临时表
TRUNCATE TABLE
管理MySQL 数据库索引
MySQL UNIQUE 索引
MySQL 数据类型
INT
DECIMAL
BIT
BOOLEAN
CHAR
VARCHAR
TEXT
DATE
TIME
DATETIME
TIMESTAMP
JSON 格式类型
ENUM
NOT NULL 约束
主键约束
外键约束
UNIQUE 约束
CHECK 约束
MySQL 字符集
MySQL 排序规则
将 CSV 文件导入 MySQL 表
MySQL 导出表到 CSV