按列行排序结果

时间:2019-05-26 10:34:32

标签: sql sqlite

this thread中被选为最佳答案的答复很有帮助。但是,SQLite似乎不支持“ ORDER BY FIELD”。

如何使用this example为“月份”列中的行设置特定顺序?

1 个答案:

答案 0 :(得分:3)

SQLite中没有ORDER BY FIELD
相反,您可以通过条件排序来做到这一点:

ORDER BY CASE month
    WHEN 'JAN' THEN 1
    WHEN 'FEB' THEN 2
    WHEN 'MAR' THEN 3
    WHEN 'APR' THEN 4
    WHEN 'MAY' THEN 5
    WHEN 'JUN' THEN 6
END 

或使用INSTR()

ORDER BY INSTR('JAN,FEB,MAR,APR,MAY,JUN', month)

您可以省略逗号或用任何其他分隔符替换。