Oracle:如何对查询进行排序以按正确顺序排列数月

Rac*_*hel 1 sql oracle plsql

我正在编写一个报告,我从前端调用了一个函数.我开始将月份信息作为从1到12开始的数字,所以我正在使用

substr(to_date(START_MONTH,'MM'),4,3)
Run Code Online (Sandbox Code Playgroud)

以1月,2月等形式获得月份,现在在我的函数中按开始月份进行分组,然后按开始月份进行排序,因此在输出中得到的值就像

4月,8月,12月由于按月的第一个字母顺序排序,如何从1月到12月开始正确的订单?

有什么建议?

另外如何对数字进行排序,以便2在1之后而不是在1之后?

Ran*_*ndy 5

按to_date排序(start_month,'mm')