Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment un LEFT OUTER JOIN peut-il renvoyer plus d'enregistrements qu'il n'en existe dans la table de gauche ?

Le LEFT OUTER JOIN renverra tous les enregistrements de la table LEFT joints à la table RIGHT si possible.

S'il y a des correspondances, il renverra toujours toutes les lignes qui correspondent, par conséquent, une ligne dans LEFT qui correspond à deux lignes dans RIGHT reviendra sous la forme de deux ROWS, tout comme un INNER JOIN.

EDIT :En réponse à votre modification, je viens de revoir votre requête et il semble que vous ne renvoyiez que des données de la table LEFT. Par conséquent, si vous ne voulez que des données de la table LEFT et que vous ne voulez qu'une seule ligne renvoyée pour chaque ligne de la table LEFT, vous n'avez pas du tout besoin d'effectuer une jointure et vous pouvez simplement faire un SELECT directement à partir de la table LEFT.