查找重复记录并以concat字符串形式给出结果

时间:2012-10-18 16:04:36

标签: mysql sql group-concat

我有2个表,其中一些记录是相同的(除了id)

表A:

id, numA, codeA
6, 34, aa 
7, 34, bb 
8, 567, bc 

表B

id, numB, codeB 
1, 34, aa 
2, 34, bb 
3, 567, bc 

我需要在表B上运行一个查询,它将检查表A中是否存在num和code的给定组合,并以这种格式给出结果:

num, concat code
34, (aa,bb) 
567, (bc) 

1 个答案:

答案 0 :(得分:4)

加入两个表并使用GROUP_CONCAT

SELECT  a.NumA, GROUP_CONCAT(DISTINCT b.codeB)
FROM    table1 A
        INNER JOIN table2 b
          on a.numA = b.numB
GROUP BY a.NumA

SQLFiddle Demo