こんにちは私はdb2ですべての空のテーブルを探す方法を考えていました。各スキーマのすべてのテーブルを一覧表示して(つまり、「スキーマのテーブルを一覧表示」)、count(*)クエリを実行して、どのテーブルが0になるかを確認することを考えていましたが、これは面倒で汚いようです。テーブル名を解析してそれぞれをループし、カウントSQLを実行するシェルスクリプトを記述します。
もっと速い方法はありますか?
別のオプションの 1 つは、データ ディクショナリまたはメタデータ テーブルを調べることです。適切な統計が正しく収集されている場合、この情報が含まれます。Oracle では、これは user/all/dba_tables データ ディクショナリ ビューになります。
D2 の SYSCAT.TABLES カタログ ビューも同様の目的を果たしているように見えますが、列の値が -1、-2 の場合もあり、その場合は値が異なります。このリンクを確認してください。
ほとんどの場合、統計の収集は 100% の精度を保証しないため、count(*) はさらに正確である可能性があります。