約 100 のデータベースを持つ SQL Server があります。ほとんどのデータベースは同じスキーマに従います。たとえば、dbo.Files という名前のテーブルがあります。
すべてのデータベースのすべての dbo.Files の UNIONed 結果を返すクエリを書きたいのですが、特にテーブル自体を参照することはありません (多すぎます!)。動的 SQL を作成することができましたが、これは扱いにくいようで、開発する必要があります。
SELECT 'SELECT count(*) FROM ' + '[' + name + ']' + '.dbo.Files'
FROM master..sysdatabases
クエリでは、すべてのデータベースに dbo.Files テーブルがあるわけではないという事実も考慮に入れる必要があります (おそらく、同じような内容の行が出力されます)。