Benim MySQL veritabanında 3 tablo vardır:
- Konular tablo (id, başlık)
- Etiketler tablo (id, isim)
- pivot tablo ThreadTags (TagId, threadID)
Kullanıcının Zaten dizi $ tagIDs yılında etiket kimlikleri var itiraf edeyim, şimdi ben bütün konuları TÜM bu etiketlerin bağlantılı olmasını istiyorum. Benim geçerli çözüm böyle bir şey:
$stmt = 'SELECT id, title FROM Threads'."\n";
foreach($tagIDs as $id) {
$stmt .= 'INNER JOIN ThreadTags T1 ON (T1.threadID = Thread.id AND T1.tagID = '.$id.')'."\n";
}
And any number of tags I add another INNER JOIN
to this table.
Is there a better way ?
NB : please, no answer like "use a NoSQL database", I can't change that, thanks