У меня есть буквенно-цифровая последовательность от A0000 до ZZZ99, созданная следующим образом.
A0000 until Z9999. Then
AA000 until AZ999. Then
BA000 until ZZ999. Then
AAA00 until ZZZ99.
Я хочу получить значение max () последовательности, но оно идет не так, как при создании.
SELECT MAX(VAL) MAX_VAL FROM (select 'A0001' as val from dual union all
select 'A0087' as val from dual union all
select 'ABA00' as val from dual union all
select 'AAZ00' as val from dual union all
select 'B0032' as val from dual );
Этот пример запроса возвращает B0032, тогда какмне нужно ABA00, чтобы быть возвращенным.
Возможно, преобразование всех символов в ASCII и последующее взятие максимума поможет мне решить проблему, но я не знаю, как динамически изменить каждый символ на ASCII в запросе.
Любая помощь будет оценена.Спасибо