4

我有 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) 
4

1 回答 1

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 演示

于 2012-10-18T16:08:55.820 回答