
テーブル調査SQLを正規表現で作ってね!!
よく使う正規表現ですが、テーブルの調査のSQLを使うとき便利です。
データベース内の複数テーブルのレコード件数を一括で確認したいときによく使う、非常に便利なSQLですね。
VS Code、サクラエディタ、Notepad++などの「正規表現を使った置換」に対応しているテキストエディタを使って、テーブル名の一覧から目的のSQLを生成する手順を解説します。
1. テーブル名の一覧を用意する
まずは、エディタ上にテーブル名を1行に1つずつ貼り付けます。
【元のテキスト】
Plaintext
users
orders
products
2. 正規表現で検索・置換する
エディタの置換機能(Ctrl + H など)を開き、「正規表現を使用する」にチェックを入れて、以下のように設定して「すべて置換」を実行します。
検索する文字列(検索パターン):
コード スニペット
^\s*(\S+)\s*$置換後の文字列(置換パターン):
コード スニペット
SELECT '$1', COUNT(*) FROM $1 UNION ALL【置換後のテキスト】
SELECT 'users', COUNT(*) FROM users UNION ALL
SELECT 'orders', COUNT(*) FROM orders UNION ALL
SELECT 'products', COUNT(*) FROM products UNION ALL
3. 最後の仕上げ(手作業)
一括置換をすると、一番最後の行にも UNION ALL が付いてしまいます。 構文エラーにならないよう、最後の行の UNION ALL を削除し、セミコロン ; に書き換えてください。
【完成したSQL】
SQL
SELECT 'users', COUNT(*) FROM users UNION ALL
SELECT 'orders', COUNT(*) FROM orders UNION ALL
SELECT 'products', COUNT(*) FROM products;