Мне нужно изменить следующий оператор MySQL, чтобы включить информацию из третьей таблицы ... но я отстой при объединениях.
select
ss.*,
se.name as engine,
ss.last_run_at + interval ss.refresh_frequency day as next_run_at,
se.logo_name
from
searches ss join search_engines se on ss.engine_id = se.id
where
ss.user_id='.$user_id.'
group by ss.id
order by ss.project_id, ss.domain, ss.keywords
Мне также нужно включить получение projects.project_name путем сопоставления searches.project_id с projects.id.
Я думаю, что ответ Роберта Вагнера на ваш связанный с этим вопрос (насколько этот запрос MySQL уязвим для SQL-инъекции?) В значительной степени резюмирует мое намерение. Этот шаблон увеличивает вероятность внедрения SQL-кода, в то время как другой шаблон делает это невозможным.






Проверьте SELECT Синтаксис и JOIN Синтаксис.
Но самый простой ответ - добавить еще одну инструкцию JOIN..ON.
select
ss.*,
se.name as engine,
ss.last_run_at + interval ss.refresh_frequency day as next_run_at,
se.logo_name,
pr.project_name -- +
from
searches ss
join search_engines se on ss.engine_id = se.id
join projects pr on ss.project_id = pr.id -- +
where
ss.user_id='.$user_id.'
group by ss.id
order by ss.project_id, ss.domain, ss.keywords
[РЕДАКТИРОВАТЬ] Я добавил комментарии -- +, чтобы отметить мои дополнения.
что это - + там делает?
Какие...? Если это ваш производственный код, вы подвергаетесь атаке с использованием SQL-инъекции.