Я пытаюсь объединить некоторые данные из трех разных таблиц в подходящий массив, но я зациклился на том, как подойти к этому.Можно ли объединить эти таблицы в одно значение массива
Прежде всего позвольте мне объяснить структуру:
Мой 'главный' стол snm_content
:
Я только хочу, чтобы использовать id
здесь
Второй стол 'snm_fieldsandfilters_connections':
element_id
Важен здесь, он имеет то же значение, id
в следующей таблице
Третий стол 'snm_fieldsandfilters_elements':
Здесь item_id
важно и item_id
такое же значение, как id
в 'snm_content'
Так, например, я добавляю еще одну статью (элементы в snm_content), которая имеет id
4, то другой ряд будет добавлен в «snm_fieldsandfilters_connections» с element_id
22 и там тоже будет другая строка добавляется к «snm_fieldsandfilters_elements» с id
22 и item_id
4.
Как я могу получить element_id
from'snm_fieldsandfilters_connections', чтобы соответствовать id
в 'snm_fieldsandfilters_elements'? А затем сравните id
с 'snm_content' с item_id
из 'snm_fieldsandfilters_elements'.
Надеюсь, я объяснил это достаточно хорошо.
Каков наилучший способ достичь этого? (Я имею в виду SQL-мудрый)
Благодаря ответу, я понял, как это сделать.
РЕШЕНИЕ:
select ct.*, fe.*, cn.*
from snm_content ct
inner join snm_fieldsandfilters_elements fe on fe.item_id = ct.id
inner join snm_fieldsandfilters_connections cn on cn.element_id = fe.id
WHERE ct.catid IN ('10')
Я посуда, как их использовать, но с трудом придумывая этот запрос в логическом путь. Код, который вы опубликовали, не работает, когда я его выполняю. Я использую InnoDB в phpmyadmin, если это помогает. – twan
Это ошибка, которую я получаю: '# 1064 - У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с 'from snm_content ct internal join snm_fieldsandfilters_elements fe on fe.item_id =' по строке 2 ' – twan
@twan извините, не означает оскорбить. ваш нынешний уровень знаний не был ясен из вопроса.Я отредактировал ответ - в конце строки была паразитная запятая – ADyson