我知道我在做傻事
这个左连接不应该只给出一个记录吗?
我的sql小提琴:
http://sqlfiddle.com/#!9/251f7/1
另外,如果一个善良的灵魂能帮助我把产品名称放在一个用逗号分隔的字段中
required output
id1 id2 productName
a1 x1 copier,headphone,cable,monitor
最佳答案
left join
在您的示例中工作得非常好,应该这样,要在一个带分隔符的字符串中concatproductName
,您应该执行group by
并使用group_concat
:
select ForgeRock.id1
, ForgeRock.id2
, group_concat(ForgeRock.productName)
from TClock
left join ForgeRock on TClock.id1 = ForgeRock.id1 and
TClock.id2 = ForgeRock.id2
where colour = 'red'
group by ForgeRock.id1
, ForgeRock.id2
SQLFiddle
关于mysql - mysql左连接结果在4条记录中,而不是1条,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30872619/