ORACLE由MONTH订购

时间:2015-05-13 07:02:34

标签: sql oracle sql-order-by

我如何以月份的全名命名? 我希望得到如下结果:

FEBRUARY    0   80
MARCH       0   58
APRIL       0   39

这是我的第一个简单脚本:

select to_char(month,'MONTH')month,mo_incoming,mt_outgoing 
from t_raw_settlement_tara_yearly 
order by month

输出:

APRIL       0   39
FEBRUARY    0   80
MARCH       0   58

第二个剧本几乎是正确的,但我希望这个月完整的一个月

select to_date(to_char(month,'MONTH'),'MONTH')month,mo_incoming,mt_outgoing 
from t_raw_settlement_tara_yearly 
order by month

输出:

2/1/2015    0   80
3/1/2015    0   58
4/1/2015    0   39

1 个答案:

答案 0 :(得分:4)

您将to_char(month,'MONTH')别名为month。现在,当您在month中使用ORDER BY时,它会引用月份字符串。使用不同的别名或限定列:

select to_char(month,'MONTH')month,mo_incoming,mt_outgoing 
from t_raw_settlement_tara_yearly t
order by t.month