Я пытаюсь вывести список «элементов», которые содержат список «тегов». Поскольку теги используются более чем для одного элемента, я использую таблицу моста, называемую «tag_rel».Left Join tag table
$query = mysql_query("SELECT i.*, t.name
FROM items AS i
LEFT JOIN tag_rel AS tr ON (tr.item = j.id)
LEFT JOIN tags AS t ON (t.id = tr.tag)
ORDER by i.id DESC");
while($row = mysql_fetch_array($query)){
Я предполагаю, что это даст мне список моих предметов. Но как мне выводить список заданных тегов для каждого элемента?
Я знаю, что не должна делать второй запрос для каждого запроса, я, е:
$query = mysql_query("SELECT i.*
FROM items AS i
ORDER by i.id DESC L");
while($row = mysql_fetch_array($query)){
$query2 = mysql_query("SELECT t.name
FROM tag_rel AS tr
LEFT JOIN tags AS t ON (t.id = tr.tag)
WHERE tr.item=$row[id]");
while($row2 = mysql_fetch_array($query)){
Любые советы?
Большое спасибо!
Первый запрос будет повторять все элементы для каждого * тег * правильно? Таким образом, вы можете сделать эту логику на PHP. Сохраняйте информацию о товаре в var, в другой, укажите информацию о тегах. Когда элемент изменяется, напечатайте элемент и его теги, а затем запустите его снова. – DontVoteMeDown
Да .. он должен работать. – DontVoteMeDown
, в то время как элемент - то же самое, делайте одно, иначе делайте другое. – Strawberry