前提:接到一个需求,查询一个东西,但是条件有点多,复杂SQL不好写,所以百度MySQL有没有把两个select语句的结果联合起来的写法,然后找到了这两个关键字。
有一点很关键的是,两个SQL语句查询的列数需要一样。
使用的数据如下所示:

union
联合两个SQL的查询结果,会去除重复部分,举下面的例子:
select * from user where id=1
union
select * from user where id=1;

可以看到最终的结果只有一条。
union all
还是上面的例子再来一次,这次换成union all
select * from user where id=1
union all
select * from user where id=1;

可以看到两条一样的记录,union all没有去重
本文介绍了在MySQL中如何使用UNION和UNION ALL操作将两个SELECT语句的结果合并。UNION会去除重复记录,而UNION ALL则保留所有记录,包括重复。通过示例展示了两者在处理相同查询时的不同结果。
449

被折叠的 条评论
为什么被折叠?



