Hi,
gibt es eine Möglichkeit, dass man in MySQL mehrere Case gruppiert?
Beispiel: http://sqlfiddle.com/#!9/6a1759/
Aufbau der Datenbank
1  | ID  |is_staff  |is_reporter  |is_superuser  |state
  | 
2  | 123  |0  |0  |1  |a
  | 
3  | 456  |1  |0  |1  |a
  | 
4  | 789  |0  |1  |1  |a
  | 
5  | 123  |1  |0  |1  |d
  | 
6  | 456  |1  |1  |1  |d
  | 
aktuell habe ich das so:
1  | SELECT ID,
  | 
2  | CASE WHEN is_staff = 1
  | 
3  |       THEN 'Yes'   
  | 
4  |       END AS 'is_staff?',
  | 
5  |       
  | 
6  |  CASE WHEN is_reporter = 1
  | 
7  |       THEN 'Yes'   
  | 
8  |       END AS 'is_reporter?',
  | 
9  |              
  | 
10  |  CASE WHEN is_superuser = 1
  | 
11  |       THEN 'Yes'   
  | 
12  |       END AS 'is_superuser?'
  | 
13  | 
  | 
14  | from users_list 
  | 
15  | where state = 'a'
  | 
16  | group by 1;
  | 
1  | ID  |is_staff?  |is_reporter?  |is_superuser?
  | 
2  | 123  |(null)  |(null)  |Yes
  | 
3  | 456  |Yes  |(null)  |Yes
  | 
4  | 789  |(null)  |Yes  |Yes
  | 
Ginge das, dass man das so ausgegeben bekommt?
1  | ID  |Status  
  | 
2  | 123  |superuser  
  | 
3  | 456  |staff, superuser  
  | 
4  | 789  |reporter, superuser
  |