Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

TSQL - Czy można zdefiniować porządek sortowania?

Jest niesamowicie niezgrabny, ale możesz użyć instrukcji CASE do zamówienia:

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

Alternatywnie możesz utworzyć dodatkową tabelę, która zawiera pole sortowania i porządek sortowania.

TargetValue  SortOrder
orange       1
apple        2
strawberry   3

I dołącz do swojego stołu do tego nowego stołu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najlepszy magazyn danych dla miliardów wierszy

  2. Łączenie ciągów instrukcji SQL select

  3. varchar(max) wszędzie?

  4. Zapytanie SQL z dołączeniem i grupowaniem przez i

  5. Czy możliwe jest wyczyszczenie dzienników w SQL Server 2008 za pomocą zapytania?