Detta är ganska smärtsamt. I grund och botten använder en metod ett gigantiskt tillägg av case
uttryck, som:
order by
(case when cod_t1 is null then 1 else 0 end)
+ (case when cod_t2 is null then 1 else 0 end)
+ (case when cod_t3 is null then 1 else 0 end)
+ ...
Det skulle vara mycket enklare att fixa din datamodell för att lagra koderna som rader snarare än kolumner. Sedan kan du använda aggregering:
select id, quarter
from mytable
group by id, quarter
order by count(cod) desc