sql >> Databasteknik >  >> RDS >> Sqlserver

Vad liknar MS SQL Server-kapaciteten funktionen MySQL FIELD()?

Använd ett CASE-uttryck (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 använda den här syntaxen för mer komplex utvärdering (inklusive kombinationer, eller om du behöver använda 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. Django MySQL-fel vid skapande av tabeller

  2. MySQL:Är det möjligt att "fylla" en SELECT med värden utan en tabell?

  3. Fråga från två tabeller i rapporten

  4. Exportera och importera alla MySQL-databaser på en gång