5

各テーブルの総行数を知りたいです。そして、一度にすべてのテーブルに対して。これはH2で可能ですか?

私はテーブルを考えています:

|テーブル名 | 行サイズ |

現時点では、現在のバージョン 1.3.170 (2012-11-30) を使用しています。

4

2 に答える 2

5

たとえば、次のようなユーザー定義関数を使用する必要があります。

drop alias count_rows;
create alias count_rows as 
'long countRows(Connection conn, String tableName) 
    throws SQLException {
ResultSet rs = conn.createStatement().
    executeQuery("select count(*) from " + tableName);
rs.next();
return rs.getLong(1); }';
select table_name, count_rows(table_name) count 
from INFORMATION_SCHEMA.TABLES 
where table_schema = 'PUBLIC';

このコードはスキーマを考慮せず、引用符で囲まれていないテーブル名に対してのみ機能します。

于 2013-02-04T21:58:53.117 に答える