次のような名前がいくつかあります。
john arnold
edward albert
そして、私はこのような名前辞書を持っています:
name
---------------------------
john
arnold
edward
名前を部分に分割し、各部分を辞書と比較する関数を作成しました (つまり、edward が辞書と比較され、次に albert が辞書と比較されます)。
私の問題は、辞書に存在しないすべての名前の連結された文字列を返したいことです。たとえば、次のように名前が届いた場合です。
john albert adam gerard
次のように返されます。
adam gerard
名前を配列に入れて、次のように検索します。
select name into name_base from usr_pre_pub.nd where name=names(ix);
ただし、辞書に名前が見つからない場合、実行は停止し、配列内の次の名前の分析は続行されません。
john (found) albert(found) adam (not found, exception no data found) gerard (not analysed)
関数の例外キャッチ部分を削除しました。
exception
when no_data_found then
return ix;
when others then
return 'others';
-- consider logging the error and then re-raise
raise;
しかし、それはただ停止し、値を返しません。
ここからどこへ行けばいいのかわからないので、これで私を助けてくれることを願っています。