0
私は2のassociative_arraysをnumber持っており、動的クエリの動的文字列を作成しようとしています。動的文字列PLSQLを構築する方法
この文のための私です:
for indx_opt in 1..IDOPTarray.count loop
IF indx_opt=1 AND IDFGCFCParray.count=1 THEN
sql_stmt_2:=sql_stmt_2||' and wopt.id_ft_opt = ';
sql_stmt_2:=sql_stmt_2|| (IDOPTarray(indx_opt));
end if;
if indx_opt=1 AND IDFGCFCParray.count>1 then
sql_stmt_2:=sql_stmt_2||' and wopt.id_ft_opt in(';
sql_stmt_2:=sql_stmt_2||(IDOPTarray(indx_opt));
elsif indx_opt>=1 AND IDFGCFCParray.count>=0 then
sql_stmt_2:=sql_stmt_2||','||(IDOPTarray(indx_opt))||')';
IDOPTarrayで2番号で、私は、正しい結果を得る:
and wopt.id_ft_opt in(27,28)
代わりIDOPTarrayでもっとして2数、私はこの結果を得ると:
を,17228),17229),17230)
私が取得したいのはこれです:
私は5つの数字を持っている場合 where w.id = 303 and wopt.id_ft_opt in (17228,17229,17230)
は、私は「どこ」節のためにこれを取得したい:
where w.id = 321 and wopt.id_ft_opt in (17228,17229,17230,17231,17232)
私は、文字列の動的な出力をしたいです。
IDFGCFCParrayは2番目の配列ですが、今のところ私が望む出力を得るためには重要ではありません。
誰かが私を助けることができますか?ありがとうございました。
でこれを行うことができ、SQL levleタイプですありがとう、私はこのソリューションをしようとします。現時点では、if条件を変更するだけで問題を解決できると思う –