これはOracleの問題のようです。エラーはODBCタイムアウト設定の直接の結果ですが、そのクエリの実行が完了するまでに20分かかることはありません。
データディクショナリのパフォーマンスの問題が発生したときに最初に試すことは、データディクショナリの統計を収集することです。これにより、Oracleにオブジェクトのサイズに関する詳細情報が提供されるため、テーブルの結合方法をより適切に決定できます。
begin
dbms_stats.gather_fixed_objects_stats;
dbms_stats.gather_dictionary_stats;
end;
/
それでも問題が解決しない場合は、クエリを可能な限り最小のサイズに縮小して、問題が解決しないようにします。 3つのクエリがありますUNION ALL
一緒にすると、チャンスはそのうちの1つだけが遅いです。次に、その1つのクエリの最適化に取り組むことができます。
(ただし、クエリの調整は多くのやりとりが必要なプロセスであり、インターネット経由で行うのは困難です。サポートできるローカルデータベース管理者を探すことをお勧めします。ExpressEditionを使用しているため、Oracleサポートに問い合わせることはできません。)