Sobes.tech
Middle

Care este diferența dintre Inner Join și Join? În ce se deosebește un Join obișnuit de un Inner Join?

sobes.tech AI

Răspuns de la AI

În termenul SQL "JOIN" se referă de obicei la "INNER JOIN" implicit, dacă nu se specifică altfel.

INNER JOIN este o operație care returnează doar acele rânduri care au corespondențe în ambele tabele conform condiției de unire.

Exemplu:

SELECT * FROM A INNER JOIN B ON A.id = B.a_id;

Va returna doar acele înregistrări în care A.id corespunde cu B.a_id.

JOIN fără specificare înseamnă de obicei și INNER JOIN, adică nu există diferență între JOIN și INNER JOIN — sunt sinonime.

Dacă se folosește, de exemplu, LEFT JOIN sau RIGHT JOIN, atunci se returnează toate înregistrările din tabela stângă sau dreaptă, respectiv, chiar dacă nu există corespondențe în cealaltă tabelă.

Rezumat:

  • INNER JOIN și JOIN sunt același lucru, returnează doar înregistrările care se potrivesc.
  • Există o diferență între INNER JOIN și alte tipuri de JOIN (LEFT, RIGHT, FULL), dar nu între JOIN și INNER JOIN.