У меня возникли проблемы с отображением setid из набора таблиц с моим SQL-запросом. Я получаю только setid из "инвентаря", а не из "наборов".
$setidquery = "SELECT inventory.itemid,
inventory.setid,
inventory.colorid,
inventory.itemtypeid,
colors.colorname,
parts.partname,
parts.partid,
sets.setid
FROM inventory
JOIN parts ON inventory.itemid = parts.partid
JOIN colors ON inventory.colorid = colors.colorid
JOIN sets ON sets.SetID = inventory.SetID
WHERE sets.setid = '$_COOKIE[setid]'
ORDER BY partname ASC
LIMIT 1000";
'$ _COOKIE [setid]' - это поиск с предыдущего этапа, так что вы, вероятно, можете догадаться, что это будет конкретный "SetID". Но когда вы вводите setid из наборов таблиц, ничего не появляется.
Например, набор 375-2 отображается отлично, потому что этот набор находится в инвентаре таблицы, но набор 0011-2 не отображается, потому что он находится в наборах таблиц.
Схема базы данных: http://weber.itn.liu.se/~stegu76/TNMK30-2016/legodatabasen.pdf
Цель: печать таблицы с наборами из инвентаря и наборов.
Извините за повторение себя, просто пытаясь быть конкретным.
Если вы используете JOIN, то получите только записи, где установлены sets.SetID = inventory.SetID. Если у вас есть только запись в наборах таблиц, а не в инвентаре, записи не совпадают с вашим соединением. Вероятно, вам нужно использовать RIGHT JOIN, чтобы отображать записи, которые не имеют соответствующих результатов в таблице Inventory.