温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样使用SQL联合查询

发布时间:2026-10-07 05:52:24 来源:亿速云 阅读:97 作者:小樊 栏目:数据库

在 SQL 中,联合查询通常有两种常见含义,下面分别说明:


一、UNION(结果集合并)

作用:把多个 SELECT 的结果集合并成一个结果集。

基本语法

SELECT 列1, 列2 FROM 表A
UNION
SELECT 列1, 列2 FROM 表B;

注意点

  • 每个 SELECT 的列数必须相同
  • 对应列的数据类型要兼容
  • UNION:自动去重
  • UNION ALL:保留重复数据,性能更好

示例

SELECT name FROM students
UNION
SELECT name FROM teachers;
SELECT id, name FROM users
UNION ALL
SELECT id, username FROM admins;

二、JOIN(表联合查询)

作用:把多张表按关系连接起来一起查询。

1️⃣ INNER JOIN(内连接)

只返回两表匹配的数据

SELECT a.id, a.name, b.order_id
FROM users a
INNER JOIN orders b
ON a.id = b.user_id;

2️⃣ LEFT JOIN(左连接)

返回左表全部数据,右表无匹配则为 NULL

SELECT a.id, a.name, b.order_id
FROM users a
LEFT JOIN orders b
ON a.id = b.user_id;

3️⃣ RIGHT JOIN(右连接)

返回右表全部数据

SELECT a.id, b.order_id
FROM users a
RIGHT JOIN orders b
ON a.id = b.user_id;

4️⃣ FULL JOIN(全连接,部分数据库支持)

SELECT *
FROM A
FULL JOIN B
ON A.id = B.id;

三、UNION 与 JOIN 的区别

对比项 UNION JOIN
作用 合并结果集 关联多张表
数据来源 纵向拼接 横向扩展
列要求 列数一致 通过关联字段连接

四、常见使用场景

  • ✅ 合并相似结构表 → UNION
  • ✅ 查询用户及其订单 → JOIN
  • ✅ 统计多张表汇总数据 → UNION ALL

如果你有具体表结构或业务场景,我可以直接帮你写 SQL。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手