sql >> Database >  >> RDS >> Sqlserver

TSQL - Is het mogelijk om de sorteervolgorde te definiëren?

Het is ongelooflijk onhandig, maar je kunt een CASE-statement gebruiken om te bestellen:

SELECT * FROM Blah 
ORDER BY CASE MyColumn 
    WHEN 'orange' THEN 1 
    WHEN 'apple' THEN 2 
    WHEN 'strawberry' THEN 3 
    END 

Als alternatief kunt u een secundaire tabel maken die het sorteerveld en een sorteervolgorde bevat.

TargetValue  SortOrder
orange       1
apple        2
strawberry   3

En schuif aan bij uw tafel aan deze nieuwe tafel.



  1. Hoe het aantal en de namen van verschillende tekens in een string in PL/SQL te vinden?

  2. Hoe kan ik mysql gebruiken in C++?

  3. ORACLE SQL selecteer distinct, geen duplicaten verwijderen

  4. MySQL-tabel met een varchar-kolom als externe sleutel