Junior — Middle
Можете ли да наведете различите типове спојева табела у SQL-у и описати њихове особине?
sobes.tech АИ
Одговор од АИ
У SQL-у постоје неколико основних типова спојева (JOIN) који омогућавају спајање података из две или више табела:
- INNER JOIN — враћа само оне редове где постоје подударања у обе табеле.
- LEFT JOIN (LEFT OUTER JOIN) — враћа све редове из леве табеле и одговарајуће редове из десне; ако нема подударања, вредности из десне табеле ће бити NULL.
- RIGHT JOIN (RIGHT OUTER JOIN) — обрнуто, враћа све редове из десне табеле и одговарајуће из леве.
- FULL JOIN (FULL OUTER JOIN) — враћа све редове из обе табеле, попуњавајући NULL тамо где нема подударања.
- CROSS JOIN — картезијански производ, сваки ред из прве табеле се спаја са сваким редом из друге.
Пример INNER JOIN:
SELECT users.name, orders.id
FROM users
INNER JOIN orders ON users.id = orders.user_id;
Овај упит ће вратити кориснике који имају поруџбине.