我刚开始使用PL / SQL。我们将条件语句存储为一个表中的字符串(下面的表1),并希望根据另一个表中的公共变量(下面的表2)选择它们,如下所示:
表1
Case_ID Col_1 Col_2
1 x y
1 a m
2 p n
表2
Col_1 Col_2 Col_3
x y c
a m b
p n q
决赛桌应该是这样的:
{{1}}
答案 0 :(得分:0)
您可能想要使用动态SQL:
Begin
For v_rec In (SELECT t2.Col_1,
t2.Col_2,
t1.statement
FROM TABLE2 t2
INNER JOIN TABLE1 t1
ON t2.Case_ID = t1.ID)
Loop
Execute Immediate 'INSERT INTO FINAL_TABLE(Col_1, Col_2, Col_3) ' ||
'SELECT Col1, Col2, ' || v_rec.statement ||
' FROM ( SELECT :Col1 AS Col1, :Col2 AS Col2 FROM DUAL)'
Using v_rec.Col_1, v_rec.Col_2;
End Loop;
End;