2012-01-14 76 views
1

我創建了一個使用SQL Server 2008 R2連接到Excel文件的鏈接服務器。OPEN QUERY - 是否可以在OPEN QUERY中使用INNER JOIN查詢多個表?

我的第一個問題是,是否有可能在單個鏈接服務器上擁有所有表格?像爲鏈接服務器創建多個數據源一樣,還是必須爲每個Excel文件(外部數據)創建單獨的鏈接服務器?

最後,即使當我創建多個Link Server時,如何查詢所有表或使用JOIN以便我可以查詢多個表?

回答

1

我無法回答你的第一個問題,沒有鏈接服務器到Excel文檔的經驗。

要加入跨多個內襯服務器,牛肚點符號通常比使用OPENQUERY()更容易。

SELECT 
    t1.col1, 
    t1.col2, 
    t2.col3 
FROM LINKEDSERVER1...table1 t1 JOIN LINKEDSERVER2...table2 t2 ON t1.col1 = t2.col1 
+0

感謝您的意見。我想我有一個更好的理解。我使用Access並鏈接到SQL Server,而不是使用Excel。這樣只有一個鏈接服務器,所有的表都通過它連接。這不適用於Excel,因爲Excel不是數據庫,您必須鏈接到單個工作表。 你的建議應該解決我關於JOIN的問題。 再次感謝! – Asynchronous 2012-01-14 05:26:05