2016-04-29 160 views
-3

我有一个表有名称列和标签。有些名称有几个标签(几个名称意味着多行),所以我需要一个查询来获得具有多个标签的名称。 你能帮我吗? O.MySQL选择查询

表:

+----+--------+-------+ 
| id | Name | Label | 
+----+--------+-------+ 
| 1 | Juan | 10 | 
| 2 | Joli | 11 | 
| 3 | Sali | 12 | 
| 4 | Juan | 15 | 
| 5 | Odette | 13 | 
| 6 | Sali | 18 | 
| 7 | Sali | 17 | 
| 8 | Youri | 14 | 
+----+--------+-------+ 

预期结果:

+--------+-------+ 
| Name | Label | 
+--------+-------+ 
| Juan | 10 | 
| Juan | 15 | 
| Sali | 12 | 
| Sali | 18 | 
| Sali | 17 | 
+--------+-------+ 
+2

请你可以发表表格结构,你已经尝试和预期输出请。 – Matt

+0

感谢您的评论。我发布了一张图片 –

+0

请你可以更新你的帖子,不要发布最新信息的答案。此外,你可以写出表格不张贴图像。谢谢。 – Matt

回答

0

尝试此查询。

SELECT name, label 
FROM table2 
WHERE name 
IN (SELECT name 
    FROM table2 
    GROUP BY name 
    HAVING COUNT(name) > 1) 
ORDER BY name ASC