2011-02-06 81 views
1

我有一個數據庫,其中包含所有的用戶信息,包括名稱。然後是第二個包含用戶註釋的數據庫,它包含#id但不包含名稱。我正在做的檢索用戶筆記的查詢沒有名稱,因此它所做的全部工作都是顯示筆記,然後在它下面,我正在執行另一個查詢以使用常見#id從第一個數據庫檢索名稱。但它不會顯示。如何顯示來自兩個不同查詢的值?

有沒有辦法可以在一個這樣的查詢?請幫忙。謝謝。

回答

1

用途:

SELECT u.name, 
      n.* 
    FROM DB2.NOTES n 
LEFT JOIN DB1.USERS u ON n.id = u.id 
ORDER BY u.name 

假設連接憑據訪問兩個數據庫,你在表名的前面,並單獨用一段前綴數據庫名。

LEFT JOIN將顯示兩個用戶和沒有用戶關聯的註釋。這是一個good primer on JOINs

1

您可能需要顯示代碼,但可以在同一主機上針對兩個數據庫(或模式)編寫查詢,只需使用數據庫名稱(例如,

SELECT db1.user.id, db1.user.name, db2.userinfo.notes 
FROM db1.user 
INNER JOIN db2.userinfo ON(db1.user.id=db2.userinfo.id) 

您正在使用的連接憑據必須能夠訪問這兩個數據庫對於這個課程的工作。

相關問題