56,801
社区成员




求教,为了横向连接两个sql,一开始用的fulljoin,结果报错,改成leftjoin就没问题(仅仅full改成left,其他没有动),求教fulljoin和leftjoin编写上哪里的问题
Full join语句:
select a1.city,a1.yici,a2.liangci
from
(select city, count(cishu) as yici
from jituan_ceshi
where cishu ='1.0'
group by city) as a1
full join
(select city,count(cishu) as liangci
from jituan_ceshi
where cishu ='2.0'
group by city) as a2
on a1.city=a2.city
order by a1.city
Left join语句:
select a1.city,a1.yici,a2.liangci
from
(select city, count(cishu) as yici
from jituan_ceshi
where cishu ='1.0'
group by city) as a1
left join
(select city,count(cishu) as liangci
from jituan_ceshi
where cishu ='2.0'
group by city) as a2
on a1.city=a2.city
order by a1.city
子查询数据有问题
感觉是 on a1.city=a2.city 连接这块的问题,筛出来两张表全数据不同,可能存在匹配问题
你可以单查下两个表,看下数据再用 full join 试下
是MySQL吗?MySQL应该是没有fulljoin的,倒是可以通过leftjoin或rightjoin修改后代表fulljoin的作用,能把报错信息发出来吗
a1和a2两个sql单独运行都能出结果,leftjoin运行也能出结果,改成fulljoin就不行了,求教大神