SQL跨服查詢

2021-09-05 23:38:15 字數 1000 閱讀 8447

今日產品部要導批資料,但是需要連線查詢查詢的幾個表不在同一伺服器上。所以我開始是這麼幹的:

1.查詢一台伺服器的資料,並匯入本地excel

2.查詢另一台伺服器的資料,並匯入本地excel

3.excle匯入資料庫,資料庫自帶了excel匯入資料庫的功能

4.連線查詢,over!

後來才知道產品部要全國50多個城市的資料

這時才想起跨庫查詢了。

1.開通分布式查詢許可權

exec sp_configure 'show advanced options',1

reconfigure

exec sp_configure 'ad hoc distributed queries',1

reconfigure

2.查詢

select a.projcode as '樓盤編號',b.projname as '樓盤名稱',count(1) as '**量' from

openrowset( 'sqloledb ', 'ip位址(伺服器名)'; '使用者名稱'; '密碼',[資料庫名].[dbo].[表名]) a

, openrowset( 'sqloledb ', 'ip位址(伺服器名)'; '使用者名稱'; '密碼',[資料庫名].[dbo].[表名]) b

where a.projcode=b.newcode group by   a.projcode ,b.projname 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

sql跨庫查詢

方式一 使用連線伺服器 sp addlinkedserver mylink sqloledb local sp addlinkedsrvlogin mylink false null,sa sa select from mylink test.dbo.student 或者在 物件資源管理器 伺服器物...

Sql跨庫查詢

不使用鏈結的伺服器名,而提供特殊的連線資訊,並將其作為四部分物件名的一部分。語法opendatasource provider name,init string 引數provider name 註冊為用於訪問資料來源的 ole db 提供程式的 progid 的名稱。provider name 的資...

SQL語句跨表查詢

1.使用關鍵字 in select from bms dsl portconsumerbind a where consumerid in select consumerid from bms dsl consumerinfo b where b.name 空 or b.name 壞 2.使用關鍵字...