所以我有三列
company id project id approved status
1 3 NOT
2 4 APPROVED
3 5 null
2 6 NOT
3 7 APPROVED
3 8 null
2 9 NOT
2 10 APPROVED
3 11 null
我现在已经使用左联接实现了这一目标,我想要的是对使用GROUP BY的公司进行分组,以及如果公司ID中的任何一个具有此ID的条件,分组依据应返回的第三colApproved_status的值为APPROVED,否则为null
所以基本上我试图通过这种情况来实现一阶命令,当approved_status ='APPROVED',然后是1,否则2等,然后分组,但是由于mysql不支持分组后排序,所以我应该怎么做才能得到这个结果.. 救命 !
最佳答案
select company_id,
case when sum(approved_status='APPROVED') > 0 then 'APPROVED'
when sum(approved_status='NOT') > 0 then 'NOT'
else null
end as `status`
from your_table
group by company_id
关于mysql - 在MYSQL中用于分组依据的其他tha列的其他值中选择值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30290080/