Je suis nouveau à PostgreSQL. J'ai 2 bases de données dans PostgreSQL 9.0, db1 et db2, et avec DB2 j'ai un accès en lecture seule. Je veux créer une fonction stockée qui serait facilement accomplie avec une requête JOIN ou une requête imbriquée, ce que PostgreSQL ne peut pas faire à travers les bases de données.PostgreSQL rejoindre à travers 2 bases de données
En DB1, j'ai table1 où je peux interroger pour un ensemble de touches clés étrangères que je peux utiliser pour rechercher des enregistrements dans un table2 dans db2, quelque chose comme:
SELECT * from db2.table2 WHERE db2.table2.primary_key IN (
SELECT db1.table1.foreign_key FROM db1.table1 WHERE
db1.table1.primary_key="whatever");
Quelle est la meilleure pratique pour ce faire dans Postgres? Je ne peux pas utiliser de tables temporaires dans db2, et passer dans les clés étrangères en tant que paramètre dans une fonction stockée dans db2 ne semble pas être une bonne solution.
Note: les touches sont VARCHAR (11)
Une option que vous voudrez peut-être enquêter sur l'utilisation des schemas: http://www.postgresql.org/docs/8.4/interactive/ddl-schemas.html –