2009-11-20 82 views
0

我使用的是php和mysql。我可以在2個數據庫上執行單個查詢嗎?

我有一個問題,讓說,我有表的用戶數據庫中的下采購表中的用戶ID列,用戶ID列下數據庫B.

我可以執行一個查詢,使用innerjoin,得到2個數據庫的價值?或者我必須使用多個查詢?

哦你,要是讓說,我有這個變量:

$conn // connect to database A 

我可以創造另一個變量mysql_close之前,數據庫B連接()?

對不起,這裏多個問題,P

回答

1
SELECT * FROM database1.table1 t1, database2.table2 t2 WHERE t1.id = t2.id 

從MySQL文檔

You can refer to a table within the default database as tbl_name, or as db_name.tbl_name to specify a database explicitly. You can refer to a column as col_name, tbl_name.col_name, or db_name.tbl_name.col_name. You need not specify a tbl_name or db_name.tbl_name prefix for a column reference unless the reference would be ambiguous. See Section 8.2.1, 「Identifier Qualifiers」, for examples of ambiguity that require the more explicit column reference forms.

+0

如何連接2個數據庫?我的意思是,在php中,mysql_select_db,我可以選擇2個數據庫嗎?我的2個數據庫有不同的用戶和密碼 – mysqllearner 2009-11-20 06:57:11

+0

你只需選擇一個數據庫,它不會改變任何東西,只是你選擇的數據庫不需要寫'database1.table'而只是'table'。記錄:您甚至可以選擇不同的數據庫,但是您必須在所有查詢中編寫數據庫名稱。 – RageZ 2009-11-20 07:00:23

+0

謝謝我會試一試。給我5分鐘來測試一個簡單的查詢 – mysqllearner 2009-11-20 07:14:00

0

你必須使用<databasename>.<tablename>訪問從特定的數據庫表,然後進行正常的加入。

相關問題