Mysql
 sql >> Base de données >  >> RDS >> Mysql

SQL :Trier par colonne, puis par sous-chaîne mélanger asc et desc

Démo ici

select *
from #temp
order
by substring(id,1,2),
case
when substring(id,1,2)%2=0 then row_number() over (partition by substring(id,1,2) order by  SUBSTRING(id,4,3) desc)
else row_number() over (partition by substring(id,1,2) order by  SUBSTRING(id,4,3) asc)
end