MySQL多表联接
我需要修改以下MySQL语句以包含第三个表中的信息。。。但我不擅长加入MySQL多表联接,mysql,join,Mysql,Join,我需要修改以下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.
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
我还需要包括通过匹配搜索来检索项目.project\u name
。project\u id
到项目.id
签出并删除
但是,最简单的答案是——在语句上添加另一个JOIN
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
[EDIT]我添加了-->
注释来指出我添加的内容。什么。。。?如果这是您的生产代码,您将面临SQL注入攻击。我认为Robert Wagner对您相关问题的回答(这个MySQL查询如何容易受到SQL注入攻击?)相当概括了我的意图。这个模式打开了SQL注入的可能性,而另一个模式使之不可能。那--+在那里做什么?