MySQL多表练习笔记

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
RDSClaw,2核4GB
简介: 链接可行,多表查询语法

1. 多表连接基础概念

连接类型

  • 内连接(INNER JOIN):只返回两个表中匹配的记录
  • 外连接(OUTER JOIN)
    • 左外连接(LEFT JOIN):返回左表所有记录和右表匹配的记录
    • 右外连接(RIGHT JOIN):返回右表所有记录和左表匹配的记录
    • 全外连接(FULL OUTER JOIN):返回两个表中的所有记录
  • 交叉连接(CROSS JOIN):返回两个表的笛卡尔积

2. 常用多表查询语法

INNER JOIN 语法

SELECT column_list
FROM table1
INNER JOIN table2 ON table1.column = table2.column;

LEFT JOIN 语法

SELECT column_list
FROM table1
LEFT JOIN table2 ON table1.column = table2.column;

3. 实际应用场景

一对多关系查询

  • 查询每个部门的员工信息
  • 查询每个订单的详细商品信息

多对多关系查询

  • 通过中间表连接两个主表
  • 如学生选课系统中学生表和课程表通过选课表关联

4. 注意事项

  • 使用表别名可以简化查询语句
  • 连接条件要明确,避免产生笛卡尔积
  • 注意NULL值的处理
  • 合理使用索引提高查询效率

5. 子查询与连接的比较

  • 某些情况下子查询可以被连接替代
  • 连接通常比子查询性能更好
  • 但子查询在某些复杂逻辑中更易理解
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
Java 关系型数据库 MySQL
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
这篇文章是关于自动化测试项目实战笔记,涵盖了JDK、Tomcat、MySQL、Jpress环境的安装和搭建过程,以及测试用例和常见问题总结。
393 1
自动化测试项目实战笔记(一):JDK、Tomcat、MySQL、Jpress环境安装和搭建
|
SQL 存储 关系型数据库
运维笔记.MySQL.基于mysqldump数据备份与恢复
运维笔记.MySQL.基于mysqldump数据备份与恢复
477 0
|
SQL 关系型数据库 MySQL
【go笔记】使用sqlx操作MySQL
【go笔记】使用sqlx操作MySQL
280 0
|
存储 关系型数据库 MySQL
技术笔记:MySQL数据库优化详解(收藏)
技术笔记:MySQL数据库优化详解(收藏)
173 0
|
SQL 关系型数据库 MySQL
技术笔记:python连接mysql数据库
技术笔记:python连接mysql数据库
364 0
|
SQL 存储 关系型数据库
技术笔记:MYSQL常用基本SQL语句总结
技术笔记:MYSQL常用基本SQL语句总结
179 0
|
SQL 关系型数据库 MySQL
Mysql优化之索引相关介绍(笔记)
这段内容涵盖了创建MySQL用户表的SQL语句,创建一个包含`username`、`age`和`dept`字段的联合索引,以及关于联合索引查询时遵循的最左前缀原则的解释。
150 0
|
存储 关系型数据库 MySQL
Mysql优化之索引相关介绍(笔记)
索引查找从顶层节点开始查找,通过key值,也就是主键的值进行比较,最终定位到存储数据的叶子节点上面,从叶子节点取出响应的数据。
177 0
Mysql优化之索引相关介绍(笔记)
|
存储 关系型数据库 MySQL
Mysql优化之索引相关介绍(笔记)
MySQL的InnoDB存储引擎中,索引节点默认大小为16KB(16384字节)。查询每个节点大小可执行`SHOW GLOBAL STATUS LIKE 'Innodb_page_size';`。索引节点大小影响B+树的效率,更高的层数意味着更多的I/O操作。当数据量超过2000万条时,建议分表以减少查询延迟和I/O次数。B+树高度为3时,根据节点数据结构,可以计算出能存放的数据量。
244 0
|
存储 关系型数据库 MySQL
Mysql优化之索引相关介绍(笔记)
**摘要:** 索引是数据库中用于加速数据检索的排好序的数据结构,例如MySQL常用B+树。没有索引时,查询需全表扫描,而使用索引则减少扫描次数,提高效率。例如,二叉树、红黑树和B树是常见数据结构,但MySQL选择B+树作为默认索引,因为它能避免非叶子节点存储数据,减少磁盘I/O操作,适合大数据量存储,并提供顺序访问的优势。
169 0

推荐镜像

更多
下一篇
开通oss服务