J'ai un scénario où je dois faire une jointure entre trois tables.Est-il possible de restreindre les résultats d'une jointure externe?
table #1 is a list of users table #2 contains users who have trait A table #3 contains users who have trait B
Si je veux trouver tous les utilisateurs qui ont trait A ou B trait (dans un sql simple,) Je pense que je suis coincé.
Si je fais une jointure régulière, les personnes qui n'ont pas de trait A n'apparaîtront pas dans le jeu de résultats pour voir si elles ont le trait B (et vice versa). Mais si je fais une jointure externe de la table 1 aux tables 2 et 3, j'obtiens toutes les lignes du tableau 1 indépendamment du reste de ma clause where spécifiant une exigence par rapport aux tables 2 ou 3.
Avant de monter avec plusieurs sqls et tables temporaires et autres joyeusetés, ce programme est beaucoup plus complexe, c'est juste le cas simple. Il crée dynamiquement le sql basé sur beaucoup de facteurs externes, donc j'essaye de le faire fonctionner dans un sql. Je m'attends à ce qu'il existe des combinaisons de dans ou existe qui fonctionnera, mais j'espérais quelque chose de simple. Mais fondamentalement, la jointure externe donnera toujours tous les résultats de la table 1, oui?