MYSQL-group by 某些字段不生效


问题:SQL1 通过 a. project_type来分组,能查出两条project_type为集成实施类的数据,而SQL2通过 b. id来分组,就获取到了一条数据,为什么呢?

SQL1

         SELECT 
                  `b`.`id` AS `id`, 
                  ifnull( `b`.`type`, '未定义' ) AS `project_type`, 
                  sum( `a`.`task_offer` ) AS `task_offer`, 
                  sum( `a`.`task_price` ) AS `task_price`, 
                  sum( `a`.`increase_price` ) AS `increase_price`, 
                  `a`.`status` AS `status`  
                 FROM 
                  ( `task` `a` LEFT JOIN `project_type` `b` ON ( ( `a`.`project_type` = `b`.`id` ) ) )  
                 WHERE  
                  ( ( `a`.`status` = 2 ) AND ( `a`.`delete_flag` = 0 ) )  
                 GROUP BY 
                   `a`.`project_type`

查询结果:

在这里插入图片描述

SQL2

           SELECT 
                  `b`.`id` AS `id`, 
                  ifnull( `b`.`type`, '未定义' ) AS `project_type`, 
                  sum( `a`.`task_offer` ) AS `task_offer`, 
                  sum( `a`.`task_price` ) AS `task_price`, 
                  sum( `a`.`increase_price` ) AS `increase_price`, 
                  `a`.`status` AS `status`  
                 FROM 
                  ( `task` `a` LEFT JOIN `project_type` `b` ON ( ( `a`.`project_type` = `b`.`id` ) ) )  
                 WHERE  
                  ( ( `a`.`status` = 2 ) AND ( `a`.`delete_flag` = 0 ) )  
                 GROUP BY 
                   `b`.`id`

查询结果:
在这里插入图片描述


版权声明:本文为qq_45731464原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。