我是PostgreSQL的新手。我有PostgreSQL 9.0中的2個數據庫,db1和db2,以及db2我有隻讀訪問權限。我想創建一個存儲的函數,否則使用JOIN或嵌套查詢很容易實現,PostgreSQL不能跨數據庫進行操作。PostgreSQL加入2個數據庫
DB1中,我已經表1在哪裏可以查詢一組外鍵的鍵,我可以使用DB2中的表2搜索記錄,像這樣:
SELECT * from db2.table2 WHERE db2.table2.primary_key IN (
SELECT db1.table1.foreign_key FROM db1.table1 WHERE
db1.table1.primary_key="whatever");
什麼是最好的做法在Postgres中做這件事?我不能在db2中使用臨時表,並且將外鍵作爲db2中運行的存儲函數中的參數傳遞似乎不是一個好的解決方案。
注:該鍵都是VARCHAR(11)
一種選擇是使用模式的:http://www.postgresql.org/docs/8.4/interactive/ddl-schemas.html – 2011-06-10 23:47:44