我在这里和其他地方搜索过,还没有找到答案。希望我没有错过。
使用 SQL Server Management Studio 2008 R2。
我的服务器上有 n 个特定数据库(还有其他数据库,但我只对其中一些感兴趣)
这些数据库中的每一个都有一个表,它们都具有相同的名称。唯一的区别是数据库名称。我想将这些表聚合在一起,在不同的数据库(不同于其他数据库)上创建一个大表。
我可以从查询结果中获取数据库名称。
N 未知。
循环是解决这个问题的方法吗?
我正在考虑以下伪代码的内容:
Set @dbnames = SELECT DISTINCT dbname FROM MyServer.dbo.MyTable
For each @name in @dbnames
INSERT INTO ADifferentDB.dbo.MyOtherTable
SELECT * FROM @name.dbo.table
Next name
(显然我对使用 SQL 变量也是新手,如您所见)