在PostgreSQL中使用月份名称进行排序

You*_*tan 4 postgresql date sql-order-by

我有一个表有一个字段Month_Name,它包含月份的名称.我想按月名称排序,而不是按字母顺序排序,而是按照其实际顺序排序,例如1月,2月等.如何使用PostgreSQL实现此功能?

有什么方法可以将Month Name转换为其数值吗?

id        billed_unit    billed_amount    town_id    ea_month    ea_year    
3959920   3695.17        25856.84         CHRY     April         2014
3959920   3695.17        25856.84         CHRY     August        2014
3959920   3695.17        25856.84         CHRY     February      2014
3959920   3695.17        25856.84         CHRY     July          2014
3959920   3695.17        25856.84         CHRY     June          2014
3959920   3695.17        25856.84         CHRY     March         2014
Run Code Online (Sandbox Code Playgroud)

Viv*_* S. 6

SELECT * 
FROM EA.TOWN_CONS_BILLING_ROLLUP 
WHERE TOWN_ID='CHRY' 
      AND EA_YEAR=2014 
ORDER BY   
to_date(ea_month,'Month');
Run Code Online (Sandbox Code Playgroud)

数据类型格式化函数