Salve a tutti ho questa query che potete vedere qui in funzione https://www.db-fiddle.com/f/j6CXXGC3WyYZrNJxi9aizo/2
codice:
   SELECT nome, WEEKDAY(calendar.start) as ggW,
        CASE WHEN tb_odl.id='44' THEN            
           "yes"
       ELSE   
         "no"         
       END as rep, 
       CASE WHEN tb_odl.id='64' THEN
            "yes"         
       ELSE            
           "no"         
       END as temp,
        CASE WHEN tb_odl.Icona='far fa-moon' THEN
            "yes"         
       ELSE        
           "no"
       END as notte            
   FROM calendar        
   INNER JOIN tb_odl ON calendar.id_odl = tb_odl.id        
   INNER JOIN tb_user ON calendar.id_user = tb_user.id        
   GROUP BY nome,ggW,rep,temp,notte
Considerate che per ogni giorno ed ogni nome (ggW) vorrei avere solo 1 record
ma le colonne (rep, temp, e notte) se ad esempio ho come in questo caso
nome ggW rep temp notte
Mike 0 no yes no
Mike 0 yes no no
io vorrei ottenere questo


nome ggW rep temp notte
Mike 0 yes yes no
ossia se c'è un yes devo avere yes nella colonna solo se tutti no dovrei avere no nella colonna.

Spero di essermi spiegato e che possate darmi una mano