sql >> Database teknologi >  >> RDS >> Sqlserver

Hvad minder MS SQL Server-kapaciteten til MySQL FIELD()-funktionen?

Brug et CASE-udtryk (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

Du kan bruge denne syntaks til mere kompleks evaluering (inklusive kombinationer, eller hvis du skal bruge 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. Mærkelig MySQL skrivebeskyttet fejl

  2. Opdater MySQL-tabel fra en lokal fil

  3. SQL Server-klynger fra et Oracle RAC-perspektiv

  4. Hvordan opretter jeg en visning i MySQL?