登录
首页 >  数据库 >  MySQL

在MySQL中,union和union all有什么不同之处?

来源:亿速云

时间:2023-05-09 10:56:14 179浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《在MySQL中,union和union all有什么不同之处?》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下,希望所有认真读完的童鞋们,都有实质性的提高。

union:对多个结果集进行并集操作,不包括重复行,同时进行排序。

union all:对多个结果集进行并集操作,包括重复行,不进行排序。

查询部门小于30号的员工信息,和部门大于20小于40号的员工信息。

①.先查询部门小于30号的员工信息。

   SELECT 
               employees_id
               ,last_name
               ,salary
               ,department_id
     FROM      employees
    WHERE      department_id 

在MySQL中,union和union all有什么不同之处?

查询部门大于20小于40的员工信息。

   SELECT 
           employees_id
           ,last_name
           ,salary
           ,department_id
     FROM  
           employees
    WHERE 
           department_id BETWEEN 20 and 40;```

在MySQL中,union和union all有什么不同之处?

③.用union连接两张表

    SELECT 
            employees_id
            ,last_name
            ,salary
            ,department_id
      FROM  
            employees
     WHERE  
            department_id 

其结果默认排序并去重,两张表都有30号部门信息,结果只出现一次。

在MySQL中,union和union all有什么不同之处?

④.下面用union all连接两张表

     SELECT 
              employees_id                 
              ,last_name                 
              ,salary                  
              ,department_id     
       FROM  
              employees  
      WHERE  
              department_id 

其结果没有去重,也没有排序,排序结果对比下边结果,先去查询20到40的员工信息,在查小于30的员工信息。

在MySQL中,union和union all有什么不同之处?

⑤.对比查询结果

     SELECT 
             employees_id
             ,last_name
             ,salary
             ,department_id
       FROM  
             employees
      WHERE  
             department_id BETWEEN 20 and 40
  UNION ALL
     SELECT 
             employees_id
             ,last_name
             ,salary
             ,department_id
       FROM  employees
      WHERE  department_id 

在MySQL中,union和union all有什么不同之处?

默认是没有进行排序的。

今天关于《在MySQL中,union和union all有什么不同之处?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于mysql,union,unionall的内容请关注golang学习网公众号!

声明:本文转载于:亿速云 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>