2012-08-28 90 views
1

TB1, TB2, TB3位於服務器上的一個數據庫中,TB4位於另一個數據庫上。跨2個數據庫加入4個表格

所需加入的列信息如下:

  • TB1 - 列A1,B2。
  • TB2 - 欄a2,b2,c3。
  • TB3 - a3欄。
  • TB4 - 欄目a4。

TB1, TB2, TB3ID TB1的ID相關的主鍵,在TB2,TB3的外鍵和TB4

我使用SQL Server Management Studio中

代碼:

選擇ID 從TB1,TB2,TB3 其中TB1.ID = TB2.TB1.ID

+4

您正在使用哪種RDBMS?你試過什麼了? – Bridge

+1

在我看來,這個問題毫無意義,並且提供的信息不足。你可以編輯顯示代碼嘗試? – mikeY

+2

「冗餘信息」是什麼意思?與TB4有什麼關係? 「ID」必須是這些表中的某個外鍵......? –

回答

2

你可以這樣將它們鏈接(不要忘記把你錯過了說關係):

SELECT t1.a1, t1.b2, t2.a2, t2.b2, t2.c3, t3.a3, t4.a4 
FROM db1..TB1 t1 
INNER JOIN db1..TB2 t2 ON t1.ID = t2.ID 
INNER JOIN db1..TB3 t3 ON t1.ID = t3.ID 
INNER JOIN db2..TB4 t4 ON --put relation here 

通過對每個表存在數據庫名稱也更換db1db2


最後一個注意事項是,您的代碼會提供冗餘信息,因爲您沒有做出所有限制。所以,生產笛卡爾產品。

+1

將在一秒內嘗試 –