3

表に示すデータに従って、特定の文字をテキストに置き換えるプログラムを書きたいと思います。

create table jap (
alpha varchar2(1),
conv varchar2(5)
);

insert into jap(alpha,conv) values ( 'A' , 'ka' );
insert into jap(alpha,conv) values ( 'B' , 'tu' );
insert into jap(alpha,conv) values ( 'C' , 'mi' );
insert into jap(alpha,conv) values ( 'D' , 'te' );
insert into jap(alpha,conv) values ( 'E' , 'ku' );
insert into jap(alpha,conv) values ( 'F' , 'lu' );
insert into jap(alpha,conv) values ( 'G' , 'ji' );

たとえば、入力DECは出力になるはずtekumiです。

4

1 に答える 1

5

これを試して:

SELECT xmlagg(xmlelement(e, conv)
              ORDER BY l).extract('//text()') .getstringval()
FROM
  (SELECT DISTINCT LEVEL l,
                         substr('DEC', LEVEL, 1) letter
   FROM dual CONNECT BY LEVEL <= length('DEC'))
INNER JOIN jap ON alpha = letter
ORDER BY l ;

ここにフィドルがあります

于 2012-06-14T09:55:23.113 に答える