Вы можете попробовать использовать TO_DATE
функцию записи 'Mon YY'
format, чтобы второй параметр включал язык, чтобы убедиться, что формат и order by
его. (спасибо за замечание @Wernfried Domscheit)
SELECT TO_DATE('Aug 17','Mon RR', 'nls_date_language = american')
FROM DUAL
Вот образец
with cte as (
SELECT 'Aug 17' dt
FROM DUAL
UNION ALL
SELECT 'Sep 18'
FROM DUAL
)
select To_char(TO_DATE(dt,'Mon RR', 'nls_date_language = american'),'Mon YY')
from cte
order by TO_DATE(dt,'Mon RR', 'nls_date_language = american') desc
sqlfiddle