查询:
SELECT MemberId, a.MemberName, GROUP_CONCAT(FruitName) FROM a LEFT JOIN b ON
a.MemberName = b.MemberName GROUP BY a.MemberName
表一
MemberID MemberName
-------------- ----------
1 Al
1 Al
3 A2
表b
MemberName FruitName
--------------- --------------
Al Apple
Al Mango
A2 Cherry
以上查询的结果输出:
MemberId MemberName GROUP_CONCAT(FruitName)
3 A2 Cherry
1 A1 Apple,Apple,Mango,Mango
我使用的实际表每个有10列,因此仅将所有内容存储在一个表中并不是一种解决方法。也就是说,如何更改查询以仅返回
'Apple,Mango'
e的MemberNam
? 最佳答案
将关键字DISTINCT添加到分组列:
GROUP_CONCAT(DISTINCT FruitName)
关于sql - SQL:为什么在使用 'GROUP CONCAT' + 'GROUP BY'时查询重复值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1154029/