sql >> Databáze >  >> RDS >> Sqlserver

Jak může LEFT OUTER JOIN vrátit více záznamů, než existuje v levé tabulce?

LEFT OUTER JOIN vrátí všechny záznamy z LEFT tabulky spojené s PRAVOU tabulkou, kde je to možné.

Pokud však existují shody, stále vrátí všechny odpovídající řádky, proto se jeden řádek VLEVO, který odpovídá dvěma řádkům VPRAVO, vrátí jako dva ŘÁDKY, stejně jako INNER JOIN.

EDIT:V reakci na vaši úpravu jsem se právě podíval na váš dotaz a zdá se, že vracíte pouze data z tabulky VLEVO. Pokud tedy chcete pouze data z tabulky LEFT a chcete vrátit pouze jeden řádek pro každý řádek v tabulce LEFT, nemusíte vůbec provádět JOIN a můžete provést SELECT přímo z tabulky LEFT.



  1. Různé způsoby použití funkce data SQL CONVERT

  2. Jak nahradit primární klíč Django jiným celým číslem, které je pro danou tabulku jedinečné

  3. Jak automaticky generovat identitu pro databázi Oracle prostřednictvím Entity framework?

  4. Naučte se ukládat a analyzovat dokumenty v systému souborů Windows pomocí SQL Server Semantic Search – část 1