Autor Zpráva
Beginner2014
Profil *
Dobrý den,

s MySQL začínám a dostal jsem se k menšímu oříšku se kterým si nevím moc rady. Mám tuto strukturu. A já bych potřeboval udělat vyhledávácí dotaz, který mi ale prohledá tagy, přiřazené k určitému článku. Nebo to udělat opačně a hledat články přiřazené k tagu? Nicméně ani jedno nevím jak udělat. Budu rád za jakékoliv návrhy.

Děkuji.
Tori
Profil
články podle tagu: Můžete si poddotazem (v části FROM) vybrat pouze ID tagů, které vás zajímají, k tomu potom joinem připojit vazební tabulku + články.
tagy k článku: když už zobrazujete článek, tak znáte jeho ID, stačí hledat jen ve vazební tabulce + tabulce tagů. (Nemíchala bych to dohromady s dotazem, kterým čtete nadpis a text článku.)
juriad
Profil
Polož si tento dotaz a pak vykoukej a snaž se pochopit, jak funguje.
SELECT * FROM posts p JOIN post_tag pt ON p.id = pt.video_id JOIN tags t ON t.id = pt.tag_id

A vyhledáváš podle toho, co zadáš do WHERE podmínky:
hledání článků podle tagu: WHERE t.name = 'pejsek';
seznam tagů článku: WHERE p.id = 123;

A jak říká Tori, ne vždy musíš použít všechny tabulky - když znáš id tagu nebo id postu.
Beginner2014
Profil *
Děkuji moc, budu zkoumat a kdyžtak bych se ještě zeptal, zatím díky!

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0