加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

UNION 联合查询

发布时间:2023-03-06 14:26:48 所属栏目:MySql教程 来源:
导读:UNION 联合查询
前面介绍了如何使用 WHERE 给查询加上条件约束,本小节介绍如何使用 UNION 联合查询。实际业务中,有时候需要把满足多种独立条件的结果集整合到一起,就可以使用 UNOIN 联合查询,本小节介绍 UNION
UNION 联合查询
前面介绍了如何使用 WHERE 给查询加上条件约束,本小节介绍如何使用 UNION 联合查询。实际业务中,有时候需要把满足多种独立条件的结果集整合到一起,就可以使用 UNOIN 联合查询,本小节介绍 UNION 和 UNION ALL 的用法和区别。

1.UNION ALL联合查询
同样为了演示方便,先向 teacher 表插入多条测试数据:

INSERT INTO teacher(name,age,id_number,email)VALUES('姓名一',,'42011720200604077X',NULL),('姓名二',,'42011720200604099X','123@qq.com'),('姓名三',,'42011720200604020X',NULL),('姓名四',,'42011720200604022X','345@qq.com'),('姓名五',,'42011720200604033X',NULL),('姓名六',,'42011720200604077X',NULL),('姓名七',,'42011720200604099X','123@qq.com'),('姓名八',,'42011720200604020X',NULL),('姓名九',,'42011720200604022X','345@qq.com'),('姓名十',,'42011720200604033X',NULL),('姓名1',,'42011720200604077X',NULL),('姓名2',,'42011720200604099X','123@qq.com'),('姓名3',,'42011720200604020X',NULL),('姓名4',,'42011720200604022X','345@qq.com'),('姓名5',,'42011720200604033X',NULL),('姓名6',,'42011720200604077X',NULL),('姓名7',,'42011720200604099X','123@qq.com'),('姓名8',,'42011720200604020X',NULL),('姓名9',,'42011720200604022X','345@qq.com'),('姓名0',,'42011720200604033X',NULL)

现在使用 UNION ALL 把满足两种查询条件的结果集并到一起:

SELECT * FROM teacher WHERE age > UNION ALLSELECT * FROM teacher WHERE age > ;

Tips:如上图所示,UNION ALL 将两种查询结果并到一起,仔细观察可以发现结果集中有重复的数据,所以使用 UNION ALL 联合查询的结果集没有去掉重复的数据。

2.UNION 联合查询
现在使用 UNION 把上面两种结果集并到一起:

SELECT * FROM teacher WHERE age > UNIONSELECT * FROM teacher WHERE age > ;

Tips:如上图所示,UNION 将两种查询结果并到一起,可以看到结果集中已经去掉重复的数据,需要根据具体业务选择使用 UNION 还是 UNION ALL。

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章