Comment choisir la base de données des relations?
Question
J'ai base de données avec le schéma ci-dessous sur l'image et je dois sélectionner tout ce qui touche à une ligne (un identifiant) de [letaky]. Cela signifie que lié [zamestnanci], tous liés [obsah] et tous [knihy] en elle.
Ceci est la première fois que j'utilisé les relations dans la base de données et je ne sais pas comment faire une telle sélection.
La solution
Utilisez REJOIGNEZ ... ON:
SELECT *
FROM zamestnanci
JOIN lekaty ON lekaty.zamestnanciid = zamestnanci.id
JOIN obsah ON obsah.idletaku = lekaty.id
JOIN knihy ON knihy.id = obsah.idknihy
WHERE letaky.id = 123
Vous pouvez également vous demander si vous avez besoin INNER JOIN, LEFT JOIN ou RIGHT JOIN pour chacun de ces jointures. La différence entre ces jointures est décrite dans beaucoup d'autres questions sur StackOverflow, par exemple celui-ci:
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow