Base N Convert - этот сайт описывает алгоритм. Я реализовал это как рекурсивный запрос:
with
t(num) as (select 362 from dual),
r(md, div, lvl) as (
select mod(num, 36), floor(num/36), 1 from t union all
select mod(div, 36), floor(div/36), lvl + 1 from r where div > 0)
select listagg(case when md > 9 then chr(ascii('A') - 10 + md)
else to_char(md)
end) within group (order by lvl desc) b36
from r
dbfiddle demo
Кажется, работает, я протестировал несколько значений сравнение результатов с онлайн-калькуляторами. Теоретически можно использовать другие базы, не только 36, алгоритм такой же, но я не тестировал.