1

information_schema.table でテーブル行をクエリすると、一貫性のない結果が得られることを知っています (特定のデータで 40% ~ 50% の差異)。ただし、0 の 40 ~ 50% はまだ 0 であるため、このステートメントは行数が 0 であるすべてのテーブルを一貫してレポートしますか? 私は自分の能力を最大限にテストしました。

SELECT CONCAT_WS('.',table_schema,table_name) FROM information_schema.tables WHERE table_schema='dbName' AND table_rows=0;

前もって感謝します!

4

1 に答える 1

1

テーブルに行が挿入されたことがない場合、information_schema が table_rows に対して 0 以外を表示する理由がわかりません。

しかし、テーブルに行が含まれている可能性があると思いますが、すべての行が (TRUNCATE ではなく DELETE ステートメントによって) 削除されています。

ドキュメントの IIRC では、 table_rows の値が 0 であることに依存して、テーブルに行が含まれていないことを意味することはできず、ゼロ以外の値に依存して、テーブルに行が含まれていることを意味することはできません。

于 2013-07-13T04:42:04.023 に答える