英文:
Union or aggregate into table variable in SQL CMD MODE
问题
有没有一种方法可以在使用SSMS中的SQL CMD模式时,将不同数据库(位于不同服务器上)的记录合并到一个表中?
:连接 数据库1
选择 名字,姓氏 从 表1
GO
:连接 数据库2
选择 名字,姓氏 从 表1
GO
:连接 数据库3
选择 名字,姓氏 从 表1
GO
我如何将所有结果放入一个表中?
英文:
Is there a way to combine records into one table across databases (and on different servers) when using SQL CMD MODE in SSMS?
:Connect Database1
select firstname,lastname from table1
GO
:Connect Database2
select firstname,lastname from table1
GO
:Connect Database3
select firstname,lastname from table1
GO
How can I put all the results in one table?
答案1
得分: 1
可以使用变量保存服务器,合并结果并使用 select into
,看起来像是:
:setvar serv1 "server1"
:setvar serv2 "server2"
:Connect $(serv1)
select column into #Result
from database.schema.table
union all
select column from $(serv2).database.schema.table
select * from #Result /* 在server1上的临时表 */
英文:
Yes you could use variables to hold the servers, union the results and use select into
, it would look something like:
:setvar serv1 "server1"
:setvar serv2 "server2"
:Connect $(serv1)
select column into #Result
from database.schema.table
union all
select column from $(serv2).database.schema.table
select * from #Result /* Temp table on server1 */
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论