1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | WITH a AS ( SELECT 'P1' param_name, 'AAA' db_column, 'P1 P2 P3' text, 'ABCD' code FROM dual UNION ALL SELECT 'P2' , 'BBB' , 'P1 P2 P3' , 'ABCD' FROM dual UNION ALL SELECT 'P3' , 'CCC' , 'P1 P2 P3' , 'ABCD' FROM dual ) , b AS ( SELECT 'ABCD' code, '111' aaa, '222' bbb, '333' ccc FROM dual ) -- 어차피 컬럼명은 몇가지로 한정되어 있겠지요... SELECT a.code , a.param_name , a.db_column , b.aaa, b.bbb, b.ccc , a.text , REPLACE (a.text, a.param_name , DECODE(a.db_column, 'AAA' , b.AAA, 'BBB' , b.BBB, 'CCC' , b.CCC) ) text2 FROM a, b WHERE a.code = b.code ; |