suppose que j'ai des tables Comment intégrerais-je le employés (employé_id, employé_name, ministère_id) CODE> et Départements (ministère_ID, Ministère) Code>. Je veux que l'extérieur soit complet sur les deux tables département_id code> qui se trouve être la condition à condition. Il doit toujours être rempli (avec la valeur de la table des employés ou avec la valeur de la table du département - quelle que soit la valeur n'est pas nulle). département code> dans la requête ci-dessus? La syntaxe est dans PostgreSQL. (Je sais que je pourrais le rejoindre - mais les informations concernant le département_id code> doivent être disponibles lors du traitement de la requête.) P> p>
3 Réponses :
Essayez ceci ...
SELECT employee_name, department_name, COALESCE (e.department_id, d.department_id) FROM employees e FULL OUTER JOIN departments d ON d.department_id = e.department_id;
Vous utiliseriez généralement un à l'aide de la clause code> dans une jointure extérieure complète:
Vous pouvez utiliser le Notez que cela nécessite que la clé étrangère ait le même nom que la clé primaire et que vous ne qualifiez pas la Colonne dans le à l'aide de la clause code>: Sélectionnez CODE>. P> P>