1

クエリを使用してデータベースからすべてのテーブルを選択しています

select table_name from all_tables where owner='XYZ' order by table_name

ただし、上記のクエリはマテリアライズド ビューも返します。マテリアライズドビューではなくテーブルのみを取得するにはどうすればよいですか

4

1 に答える 1

5

マテリアライズド ビューとそのログ テーブル (存在する場合) を無視できます。

select *
  from all_tables t
 where owner = user
   and (owner, table_name) not in (select owner, mview_name
                                     from all_mviews l
                                   union all
                                   select log_owner, log_table
                                     from all_mview_logs)
于 2013-01-23T17:59:43.023 に答える