您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

24.MySQL中的联合查询(UNION)

bubuko 2022/1/25 19:57:37 mysql 字数 12432 阅读 645 来源 http://www.bubuko.com/infolist-5-1.html

1.简介 联合查询是多表查询的一种方式,经常应用在分表操作中,在保证多个SELECT语句的查询字段数相同的情况下,合并多个查询的结果。 语法 1 SELECT … 2 UNION [ALL | DISTINCT] SELECT … 3 [UNION [ALL | DISTINCT] SELECT … ...

1.简介

联合查询是多表查询的一种方式,经常应用在分表操作中,在保证多个SELECT语句的查询字段数相同的情况下,合并多个查询的结果。

语法

1 SELECT2 UNION [ALL | DISTINCT] SELECT3 [UNION [ALL | DISTINCT] SELECT …];

UNION是实现联合查询的关键字。

ALL表示保存所有的查询结果。

DISTINCT是默认值,可以省略,表示去除完全重复的记录

2.准备

 1 CREATE DATABASE mahaiwuji;
 2 
 3 USE mahaiwuji;
 4 
 5 CREATE TABLE student1 (
 6     sid INT (4) PRIMARY KEY,
 7     sname VARCHAR (36),
 8     score INT
 9 ) ENGINE = INNODB DEFAULT CHARSET = utf8;
10 
11 INSERT INTO student1 VALUES (1,a1,60);
12 INSERT INTO student1 VALUES (2,a2,65);
13 INSERT INTO student1 VALUES (3,a3,70);
14 INSERT INTO student1 VALUES (4,a4,75);
15 INSERT INTO student1 VALUES (5,a5,80);
16 
17 
18 CREATE TABLE student2 (
19     sid INT (4) PRIMARY KEY,
20     sname VARCHAR (36),
21     score INT
22 ) ENGINE = INNODB DEFAULT CHARSET = utf8;
23 
24 INSERT INTO student2 VALUES (5,a5,80);
25 INSERT INTO student2 VALUES (6,a6,85);
26 INSERT INTO student2 VALUES (7,a7,90);
27 INSERT INTO student2 VALUES (8,a8,95);
28 INSERT INTO student2 VALUES (9,a9,100);

技术分享图片

技术分享图片

3.案例

1 -- 自动去掉完全重复的数据
2 SELECT * FROM student1
3 UNION
4 SELECT * FROM student2;

技术分享图片

1 -- 合并所有的数据
2 SELECT * FROM student1
3 UNION ALL
4 SELECT * FROM student2;

技术分享图片

1 -- 合并部分数据
2 SELECT * FROM student1 WHERE sid=1
3 UNION ALL
4 SELECT * FROM student2;

技术分享图片

1 -- 排序
2 SELECT * FROM student1
3 UNION ALL
4 SELECT * FROM student2
5 ORDER BY sid DESC;

技术分享图片

24.MySQL中的联合查询(UNION)

原文:https://www.cnblogs.com/mahaiwuji/p/12702940.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶