SQL- UNION ALL a large number of tables

前端 未结 4 1698
萌比男神i
萌比男神i 2021-01-27 07:39

I have a large number of tables (some thousands) containing similar data. I would like to run some reports from these. The table names are similar, so I can get a list of table

4条回答
  •  没有蜡笔的小新
    2021-01-27 07:57

    You can do this with Dynamic SQL

    Declare @SQL varchar(max) =''
    Select @SQL = @SQL +'Union All Select * From '+Table_Name+' ' 
      FROM INFORMATION_SCHEMA.TABLES
      WHERE TABLE_NAME LIKE 'TableNamePrefix%'
      ORDER BY TABLE_NAME
    Set @SQL = Stuff(@SQL,1,10,'')
    Exec(@SQL)
    

提交回复
热议问题