Hver tutorial kan have et vilkårligt antal tags, og hver tutorial kan have det samme tag. I relationer bliver det til en many-to-many relation. Til det skal du bruge en mellem tabel.
Dette er et pseudo-setup
tbl_tutorial
pk_tutorial int(10), unsigned
tbl_tutorial_has_tag
fk_tutorial int(10), unsigned
fk_tag int(10), unsigned
tbl_tag
pk_tag int(10), unsigned
Skal du have fat i alle tags for en bestemt tutorial, kan du skrive følgende:
SELECT * FROM tbl_tags JOIN INNER tbl_tutorial_has_tag ON fk_tag=pk_tag AND fk_tutorial = $id
Skal du have alle tutorials med et bestemt tag, kan du skrive følgende
SELECT * FROM tbl_tutorial JOIN INNER tbl_tutorial_has_tag ON fk_tutorial=pk_tutorial AND fk_tag = $id
Dette kaldes også for normalisering.
Indlæg senest redigeret d. 02.09.2011 23:56 af Bruger #10216