【问题标题】:Querying the same table for a list of databases in MS SQL Server在同一表中查询 MS SQL Server 中的数据库列表
【发布时间】:2013-10-14 18:51:18
【问题描述】:

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

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

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

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

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

Select * From #Versions

Drop Table #Versions

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

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

【问题讨论】:

    标签: sql sql-server database


    【解决方案1】:

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

    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
    

    【讨论】:

      【解决方案2】:
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-10-26
      • 2012-12-18
      • 1970-01-01
      • 2015-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多