记得之前领导安排比测数据,但是需要连接查询查询的几个表不在同一服务器上。所以我开始是这么干的:
1.查询一台服务器的数据,并导入本地Excel,并拷贝到本机。
2.查询另一台服务器的数据,并导入本地Excel,并拷贝到本机。
3.Excle导入数据库,数据库自带了Excel导入数据库的功能。
4.连接查询,OVER!
后来才知道测试的数据,所以每个分局的数据我都要重复这样干一遍。
这时才想起跨库查询了。
1.开通分布式查询权限
exec sp_configure \'show advanced options\',1
reconfigure
exec sp_configure \'Ad Hoc Distributed Queries\',1
reconfigure
2.查询
select a.wt12 as \'楼盘编号\',b.stnameas \'楼盘名称\',count(1) as \'房源量\' from
openrowset( \'SQLOLEDB \', \'IP地址(服务器名)\'; \'用户名\'; \'密码\',[数据库名].[dbo].[表名]) a
, openrowset( \'SQLOLEDB \', \'IP地址(服务器名)\'; \'用户名\'; \'密码\',[数据库名].[dbo].[表名]) b
where a.wt12=b.wt GROUP by a.stid,b.stname order by count(1) desc
3.然后换分局,只需要改IP、 库名和表名了。
4.关闭
exec sp_configure \'Ad Hoc Distributed Queries\',0
reconfigure
exec sp_configure \'show advanced options\',0
reconfigure