Oracle如何根据列数最多的那一列日期排序

图片说明
如图,MONTH、MONTH1查出来为空的我就自动赋值它为0,现在要按时间顺序排序,有时候可能MONTH的有效值更多,有时候可能MONTH1的有效值更多,我要用有效值最多的那一列排序,该怎么办呢?求帮助

select MONTH,MONTH1 from table order by case when month=0 then month1 else month end desc