mysql union查询_24.MySQL中的联合查询(UNION)

1.简介

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

语法

SELECT …UNION [ALL | DISTINCT] SELECT …[UNION [ALL | DISTINCT] SELECT …];

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

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

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

2.准备

CREATE DATABASE mahaiwuji;USE mahaiwuji;CREATE TABLE student1 (    sid INT (4) PRIMARY KEY,    sname VARCHAR (36),   score INT ) ENGINE = INNODB DEFAULT CHARSET = utf8;INSERT INTO student1 VALUES (1,'a1',60);INSERT INTO student1 VALUES (2,'a2',65);INSERT INTO student1 VALUES (3,'a3',70);INSERT INTO student1 VALUES (4,'a4',75);INSERT INTO student1 VALUES (5,'a5',80);CREATE TABLE student2 (    sid INT (4) PRIMARY KEY,    sname VARCHAR (36),    score INT ) ENGINE = INNODB DEFAULT CHARSET = utf8;INSERT INTO student2 VALUES (5,'a5',80);INSERT INTO student2 VALUES (6,'a6',85);INSERT INTO student2 VALUES (7,'a7',90);INSERT INTO student2 VALUES (8,'a8',95);INSERT INTO student2 VALUES (9,'a9',100);
43ff417db85d407d87e799eef8a02906
41e9247a923347fbacd6df74c88e6220

3.案例

-- 自动去掉完全重复的数据SELECT * FROM student1UNIONSELECT * FROM student2;
46864b4f96e1467d872fc216bd4ac736
-- 合并所有的数据SELECT * FROM student1UNION ALLSELECT * FROM student2;
3fb520b5f51b46e789145d821dd8a8d9
-- 合并部分数据SELECT * FROM student1 WHERE sid=1UNION ALLSELECT * FROM student2;
68610d30ee3740499f6623bc9aa9bed5
-- 排序SELECT * FROM student1UNION ALLSELECT * FROM student2ORDER BY sid DESC;
ca19e89d68f74e728fc5ea4786067f78
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值