Konuları etiketleri bağlantılı olsun

0 Cevap php

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

0 Cevap