查询篇 JOIN语法
JOIN语法讲解
在 MySQL 中,JOIN 是用于将两个或多个表中的行基于相关列的值进行连接的操作。这里将介绍几种常见的 JOIN 类型及其语法。
- 内连接(INNER JOIN):返回两个表中匹配的行。
SELECT 列名 FROM 表1 INNER JOIN 表2 ON 表1.列 = 表2.列;
- 左连接(LEFT JOIN):返回左表中的所有行,以及与右表匹配的行。
SELECT 列名 FROM 表1 LEFT JOIN 表2 ON 表1.列 = 表2.列;
- 右连接(RIGHT JOIN):返回右表中的所有行,以及与左表匹配的行。
SELECT 列名 FROM 表1 RIGHT JOIN 表2 ON 表1.列 = 表2.列;
- 全连接(FULL JOIN):返回两个表中的所有行,无论是否匹配。
SELECT 列名 FROM 表1 FULL JOIN 表2 ON 表1.列 = 表2.列;
在上述语法中,表1
和 表2
是要连接的表名,列
是用于连接的列名。通过 ON
关键字指定连接条件,即两个表中要匹配的列。通过 SELECT
子句选择要返回的列。
还可以使用更复杂的 JOIN 语句,例如在一个查询中连接多个表,或者在连接条件中使用多个列。根据具体情况选择适当的 JOIN 类型和语法来满足你的需求。
表明过长可以使用AS语法简写【推荐】
如果表名太长,你可以使用 AS
关键字为表起一个别名,以简化查询语句。以下是使用别名的示例:
-
内连接(INNER JOIN):
SELECT 列名 FROM 表1 AS 别名1 INNER JOIN 表2 AS 别名2 ON 别名1.列 = 别名2.列; -
左连接(LEFT JOIN):
SELECT 列名 FROM 表1 AS 别名1 LEFT JOIN 表2 AS 别名2 ON 别名1.列 = 别名2.列; -
右连接(RIGHT JOIN):
SELECT 列名 FROM 表1 AS 别名1 RIGHT JOIN 表2 AS 别名2 ON 别名1.列 = 别名2.列; -
全连接(FULL JOIN):
SELECT 列名 FROM 表1 AS 别名1 FULL JOIN 表2 AS 别名2 ON 别名1.列 = 别名2.列;
在上述语法中,别名1
和 别名2
是为表起的别名,用于代替长表名。你可以根据需要选择适当的别名,并在查询中使用它们来引用相应的表。
使用别名不仅可以简化查询语句,还可以提高可读性和维护性,特别是在连接多个表时。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现