加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql查询成果该如何合并

发布时间:2023-06-10 13:11:45 所属栏目:MySql教程 来源:
导读:这篇文章给大家介绍mysql查询结果该如何合并,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在mysql中,可以利用UNION操作符来合并查询结果,该操作符用于将两个以上的SELECT语句的查询结果合

这篇文章给大家介绍mysql查询结果该如何合并,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

在mysql中,可以利用UNION操作符来合并查询结果,该操作符用于将两个以上的SELECT语句的查询结果合并到一起,然后去除掉相同的记录;语法“查询语句1 union 查询语句2 union ....”。

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

在mysql中,可以利用UNION操作符来合并查询结果。

UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。

语法:

查询语句1

union

查询语句2

union

....

应用场景:

要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时

特点:

1、要求多条查询语句的查询列数是一致的!

2、要求多条查询语句的查询的每一列的类型和顺序最好一致

3、union关键字默认去重,如果使用union all 可以包含重复项

示例:查询部门编号>90或邮箱包含a的员工信息

#联合查询

#

SELECT * FROM employees WHERE department_id > 90 OR email LIKE '%a%';

#使用UNION联合查询

SELECT * FROM employees WHERE department_id > 90

UNION

SELECT * FROM employees WHERE email LIKE '%a%';

#

USE test;

#案例:查询中国用户中女性的信息以及外国用户中女性的用户信息

SELECT c.`c_id`, c.`c_name`, c.`c_sex` FROM china c WHERE c_sex = '女'

UNION

SELECT f.`f_id`, f.`f_name`, f.`f_sex` FROM foreignUser f WHERE f_sex = 'female';

#china表和foreignUser表中都有66号韩梅梅(UNION会去重)

SELECT c.`c_id`, c.`c_name` FROM china c WHERE c_sex = '女'

UNION

SELECT f.`f_id`, f.`f_name` FROM foreignUser f WHERE f_sex = 'female';

#china表和foreignUser表中都有66号韩梅梅(UNION ALL 不会去重)

SELECT c.`c_id`, c.`c_name` FROM china c WHERE c_sex = '女'

UNION ALL

SELECT f.`f_id`, f.`f_name` FROM foreignUser f WHERE f_sex = 'female';

关于mysql查询结果该如何合并就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。

(编辑:银川站长网)

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