3

这是我第一次在 SO 上发帖,所以请放轻松!

我正在尝试编写一个 SQL 脚本,该脚本在同一个表中查询单个 SQL Server 实例中的数据库列表。

我已经成功地使用以下方法查询了我需要的数据库列表,并将这些数据插入到临时表中。

Select name Into #Versions
From sys.databases
Where name Like 'Master%'

Master以数值为后缀,以识别不同的环境。

Select * From #Versions

Drop Table #Versions

我要查询的表名在每个数据库中都是相同的,我想从该表中提取最新值并将其插入到temp返回的每个数据库名称的表中。

我曾尝试对此进行研究,但无济于事。我对 SQL 相当熟悉,但我担心我在这里可能超出我的深度。

4

2 回答 2

2

您可以执行以下操作。获得数据库列表后,您可以构建查询(您需要根据需要对其进行编辑)。

Select name Into #Versions
From sys.databases
Where name Like 'test%'

declare @sql as varchar(max) = ''
select @sql = @sql + 'INSERT INTO sometable SELECT TOP 1 * FROM ' + name + '..sourcetable ORDER BY somedate DESC; '
FROM #Versions

exec (@sql)

Drop Table #Versions
于 2013-10-14T10:51:18.850 回答
0

查看未记录的 sp_MSforeachdb 过程此处

于 2013-10-14T10:25:53.753 回答