0
create or replace PROCEDURE NG_SP_TEST_ZAPIN
as
i number;
q nvarchar2(100);
BEGIN
i:=1;
select ftrquestion1 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion2 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion3 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion4 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion5 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion6 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion7 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
select ftrquestion8 into q from NG_ZAPIN_FTRCHECKLIST where wi_name=1;
END;
我必須從表中選擇具有相同前綴的特定列,最後一個值單獨更改爲0..10而不是寫入10選擇查詢我可以放入循環並作爲列的最後一個字符進行迭代(作爲循環值)。在選擇查詢列名中使用循環
實際的工作是在同一行中有列ftrquestion(0..10)和ftranswer(0..10),但我需要在一行中作爲ftrquestion0和ftranswer0並重復,直到ftrquestion10和ftranswer10 ..幫我在這.. – Mano
我猜你的數據表是不是在一個規範化的形式嗎?這是相當骯髒的方法,你在那裏使用。一個骯髒的解決方案將是一個循環中的字符串連接。因此,做一個從0到10的循環,並將迭代作爲文本添加到您的字段中,如「Select ftrquestion + loopVariable,ftranswer + loopvariable into q from [...]」。 – kurdy
你確定oracle中的連接是由「+」完成的,bcos是給出錯誤的。請檢查併發布確切的查詢,因爲我可以直接使用它。錯誤(8,12):PL/SQL:ORA-00904:「FTRQUESTION」:無效標識符 – Mano