1 Star 0 Fork 0

huyi / TechCPP

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
union和join.md 1.75 KB
一键复制 编辑 原始数据 按行查看 历史
葛昆仑 提交于 2023-11-30 16:32 . update: 2 articles

1. UNION:

  • 作用
    • UNION 操作用于合并两个或多个SELECT语句的结果集,并消除重复行。
  • 特点
    • 参与 UNION 操作的每个SELECT语句都必须拥有相同数量的列,且对应列的数据类型也需相似,以便可以进行合并。
    • 结果中的每一列的数据类型是由所有查询中对应列的数据类型“兼容得出”的数据类型(通常取其共同超类)。
    • 默认情况下,UNION 对合并结果进行去重处理(相当于执行了DISTINCT),只返回不重复的记录。
    • 如果想要包含所有的重复记录,可以使用 UNION ALL,这样可以提高查询效率,因为不需要进行去重操作。

示例

SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

2. JOIN:

  • 作用
    • JOIN 操作用于根据两个表中的共同字段,将这些表中的行组合起来形成一个新的结果集。
  • 特点
    • JOIN 操作可以是内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)、全连接(FULL JOIN)等,根据不同的需求组合表中的数据。
    • 在进行 JOIN 时,通常需要在 ON 子句中指定连接条件,即定义如何匹配来自连接表的行。
    • JOIN 操作不仅可以合并行,还能从两个表中选择所需的列,创建一个由这些列组成的新结果集。

示例

SELECT columns
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;

总结而言,**UNION 主要用于垂直地合并相似结构表的数据,而 JOIN 主要用于水平地合并不同表中相关联的行。**二者都是数据库查询时非常有用的工具,但适用于不同的情境和需求。

1
https://gitee.com/hylhm/TechCPP.git
git@gitee.com:hylhm/TechCPP.git
hylhm
TechCPP
TechCPP
master

搜索帮助