在查询的sql语句中,from两个表然后进行left join进行联查,原本想着根据from的两个表进行同时对left join中的信息进行筛选,却出现了错误信息
[Err] 1054 - Unknown column 'a' in 'on clause'
我的sql语句如下
select
a.*,count(c.id) as number
from
a,b
left join c on c.name = a.name
and c.type = b.type
where ...
GROUP BY a.id
我要查询的是c表是与a和b表都有关联的,如果这样写就会报错,说是找不到a表的name数据
后来我把sql语句改成了下面这样就好了
select
a.*,count(c.id) as number
from
b
left join a on (这里随便来个判断即可)
left join c on c.name = a.name
and c.type = b.type
where ...
GROUP BY a.id