SQL Server でテーブルのレコード件数の一覧を取得

SQL Server でテーブルのレコード件数一覧を取得する場合、以下のSQLを実行して、生成したSQLを加工して実行していたが、面倒になってきたので、代替手段を探す。

select 'select ''' + TABLE_NAME + ''' ,count(*) from ' + TABLE_NAME + ' union' from INFORMATION_SCHEMA.TABLES

下記の記事でいろいろ方法があることがわかるが、対象が1テーブルだったり、一覧で取得できる場合は概数だったりで、欲しいものが得られない。「sys.tables」にも行数の情報はないし。

qiita.com

仕方ないので、INFORMATION_SCHEMA.TABLES をカーソルで回して、件数一覧の仮テーブルを作成することにする。もっと簡単な方法がありそうなものだが…

gist.github.com