表一:
name
a
e
表b:
name num
a 10
b 20
c 30
我想得到:
name num
a 10
b 20
c 30
e 0
我的sql语句是:
select c.name,
IFNULL (b.num,0) as 'num'
from
(select name from a
union
select name from b) c
left join b
on c.`name`=b.`name`
还有其他方法可以使结果更简单吗?
FULL OUTER JOIN can be achieve by below in mysql
SELECT a.name, IFNULL (b.num,0) as 'num' FROM a
LEFT OUTER JOIN b ON b.name = a.name
UNION
SELECT b.name, IFNULL (b.num,0) as 'num' FROM a
RIGHT OUTER JOIN b ON a.name = b.name
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句