sql >> Database teknologi >  >> RDS >> Mysql

MySQL - ORDER BY værdier inden for IN()

SELECT id, name
FROM mytable
WHERE name IN ('B', 'A', 'D', 'E', 'C')
ORDER BY FIELD(name, 'B', 'A', 'D', 'E', 'C')

FELT funktion returnerer positionen af ​​den første streng i den resterende liste af strenge.

Det er dog meget bedre ydelsesmæssigt at have en indekseret kolonne, der repræsenterer din sorteringsrækkefølge, og derefter sortere efter denne kolonne.



  1. Benchmarking Managed PostgreSQL Cloud Solutions - Google Cloud:Tredje del

  2. En oversigt over de forskellige scanningsmetoder i PostgreSQL

  3. Undtagelse i JPA ved brug af seed-fil til PostgreSQL

  4. Sådan fjerner du en del af strengen i oracle