mysql中内连接,左连接和右连接的区别-mysql教程

admin1年前 (2024-06-05)基础运维知识296
点击下载TXT

MySQL 中内连接、左连接和右连接的区别

内连接 (INNER JOIN)

  • 只返回两个表中具有匹配行的记录。
  • 匹配失败的记录将被丢弃。

左连接 (LEFT JOIN)

  • 返回左表中的所有记录,即使右表中没有匹配的行。
  • 右表中没有匹配行的记录将用 NULL 值填充。

右连接 (RIGHT JOIN)

  • 返回右表中的所有记录,即使左表中没有匹配的行。
  • 左表中没有匹配行的记录将用 NULL 值填充。

用法

  • 内连接:用于查找两个表之间具有匹配行的记录,并丢弃不匹配的记录。
  • 左连接:用于查找左表的所有记录,并包含右表中匹配行的记录。
  • 右连接:用于查找右表的所有记录,并包含左表中匹配行的记录。

语法

  • 内连接:

    SELECT *
    FROM table1
    INNER JOIN table2
    ON table1.column1 = table2.column2;
    登录后复制
  • 左连接:

    SELECT *
    FROM table1
    LEFT JOIN table2
    ON table1.column1 = table2.column2;
    登录后复制
  • 右连接:

    SELECT *
    FROM table1
    RIGHT JOIN table2
    ON table1.column1 = table2.column2;
    登录后复制

例子

假设我们有以下两个表:

Table1:
| id | name |
|---|---|
| 1 | John |
| 2 | Mary |
| 3 | Bob |

Table2:
| id | address |
|---|---|
| 1 | 123 Main St |
| 2 | 456 Elm St |
| 4 | 789 Oak St |
登录后复制
  • 内连接:

    SELECT *
    FROM Table1
    INNER JOIN Table2
    ON Table1.id = Table2.id;
    登录后复制

    结果:

id name address
1 John 123 Main St
2 Mary 456 Elm St
  • 左连接:

    SELECT *
    FROM Table1
    LEFT JOIN Table2
    ON Table1.id = Table2.id;
    登录后复制

    结果:

id name address
1 John 123 Main St
2 Mary 456 Elm St
3 Bob NULL
  • 右连接:

    SELECT *
    FROM Table1
    RIGHT JOIN Table2
    ON Table1.id = Table2.id;
    登录后复制

    结果:

id name address
1 John 123 Main St
2 Mary 456 Elm St
4 NULL 789 Oak St

相关文章

mysql怎么更改安装路径-mysql教程

如何更改 MySQL 安装路径 问题:如何在不重新安装 MySQL 的情况下更改 MySQL 的安装路径? 回答: 步骤: 关闭所有 MySQL 服务:停止 MySQL 数据库服务和其他相关服务...

mysql怎么选择表-mysql教程

如何选择 MySQL 中的表 在 MySQL 数据库设计中,选择合适的表至关重要,因为它将影响数据库的性能和可维护性。以下是选择表的指南: 1. 确定表的目的和内容 首先,明确你要创建的表的用途。考...

mysql乐观锁怎么用-mysql教程

MySQL乐观锁:如何使用 乐观锁是一种并发控制机制,它假设事务在提交时不会发生冲突。与悲观锁相反,乐观锁不会在事务开始时就锁定数据。 如何使用MySQL乐观锁: 1. 设置版本号列 为经常更新的表...

mysql排序怎么设置-mysql教程

MySQL 排序设置 在 MySQL 中,排序可以通过 ORDER BY 子句来实现。ORDER BY 子句允许你根据指定的列或表达式对结果集进行排序。 语法: SELECT column_name...

mysql管理工具有什么用-mysql教程

MySQL 管理工具的作用 MySQL 管理工具是一款专用于管理和维护 MySQL 数据库的软件应用程序。它为用户提供了直观的用户界面,使他们能够轻松执行以下任务: 1. 数据库连接和管理 连接到...

mysql锁机制怎么用-mysql教程

MySQL 锁机制的用法 什么是 MySQL 锁?MySQL 锁是一种数据库机制,用于控制对数据的并发访问,防止多个用户同时更改相同的数据,从而保证数据的完整性和一致性。 MySQL 常见的锁类型:...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。