MySQL - 按ASC或DESC的顺序排序

Sta*_*bie 6 mysql sql sql-order-by

说我有一张鲜花和相关颜色的桌子.是否有可能获得一个鲜花列表并按顺序排序Yellow,然后Blue,然后,然后Red.基本上,我想指定一个值列表,并按这些值对结果进行排序.可能?

OMG*_*ies 10

你可以使用FIND_IN_SET:

ORDER BY FIND_IN_SET(column, 'Yellow,Blue,Red')
Run Code Online (Sandbox Code Playgroud)

..或ANSI CASE声明:

ORDER BY CASE column
           WHEN 'Yellow' THEN 1
           WHEN 'Blue' THEN 2
           WHEN 'Red' THEN 3
         END
Run Code Online (Sandbox Code Playgroud)