2013-03-07 5 views

ответ

5

Хороший вопрос!

create table t (w varchar2(30)); 

insert into t values ('First'); 
insert into t values ('THIRD'); 
insert into t values ('eleventh'); 
insert into t values ('Twenty-eighth'); 
insert into t values ('two hundred fifty sixth'); 

select 
    t.w, dict.n 
from t 
left join (
    select 
    level n, 
    regexp_replace(to_char(to_date(level,'J'),'fmJSPTH'),'[^A-Z]') w 
    FROM dual 
    connect by level <= 1000 
) dict on regexp_replace(upper(t.w),'[^A-Z]')=dict.w 

fiddle

+0

WOWWW УДИВИТЕЛЬНЫЙ !! ВАШЕ ПРОСТО ВЕЛИКОЕ! ПРИЛОЖЕНИЕ К ВАМ !! –

Смежные вопросы