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

Jakie możliwości MS SQL Server są podobne do funkcji MySQL FIELD()?

Użyj wyrażenia CASE (SQL Server 2005+):

ORDER BY CASE status
           WHEN 'active' THEN 1
           WHEN 'approved' THEN 2
           WHEN 'rejected' THEN 3
           WHEN 'submitted' THEN 4
           ELSE 5
         END

Możesz użyć tej składni do bardziej złożonej oceny (w tym kombinacji lub jeśli musisz użyć LIKE)

ORDER BY CASE 
           WHEN status LIKE 'active' THEN 1
           WHEN status LIKE 'approved' THEN 2
           WHEN status LIKE 'rejected' THEN 3
           WHEN status LIKE 'submitted' THEN 4
           ELSE 5
         END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sql grupuj tylko według wierszy, które są w sekwencji

  2. Rozwiązywanie problemów z przyznawaniem pamięci zmiennej w programie SQL Server

  3. Jak zliczyć liczbę wystąpień określonego podciągu w zmiennej SQL?

  4. Jak uzyskać czas z formatu DateTime w SQL?

  5. Wybór COUNT(*) z DISTINCT