システムから大量のデータを定期的に抽出するクエリを作成する必要があります。
私が抱えている問題は、新しいプロジェクトが開始されると、アプリケーションによって作成される意味不明な名前を持つテーブルが 100 個まであることです。特定のプロジェクトのテーブルの名前は、プロジェクト テーブルに保持されます。
そのため、プロジェクト テーブル、他のいくつかのテーブル、およびプロジェクト テーブルの列にリストされている各テーブルを結合する必要があります。
もしそうなら、これは可能ですか?
クエリをEXECUCTE IMMEDIATE
ステートメントに入れます。(これは動的SQLと呼ばれます)
declare
vcTableName varchar2(30);
vcResult varchar2(128);
begin
vcTableName := 'SOME_TABLE_NAME';
EXECUTE IMMEDIATE 'SELECT column FROM '||vcTableName||' WHERE conditions' into vcResult;
do_something(vcResult);
end;
/