MySql在具有不同记录的列中连接重复值

时间:2017-07-14 08:39:30

标签: mysql

我有2个表:Artist和play_store。艺术家表有2列id(PK),名称。 play_store表有列:id(pk),title,artist_id( - >艺术家表pk的外键)。

艺术家表

val tvName = view.findViewById<TextView>(R.id.tvName)

play_store表

val tvName = view.findViewById(R.id.tvName) as TextView

在上面的play_store表中,重复的标题可用于不同的artist_id。我想省略那些重复的标题,但在响应列中需要所有不同的artist_id。预期结果应如下。

id  | name  
1   | ArtistA  
2   | ArtistB  
3   | ArtistC  
4   | ArtistD  

有人可以让我知道如何将重复值加入一列但仍有不同的记录吗?

1 个答案:

答案 0 :(得分:1)

您可以使用:

SELECT title, group_concat(artist_id) as artist_ids 
FROM `play_store`
GROUP BY title

请注意,id中没有group by列,因此不应该选择此列。{p>如果你想要一个&#34;计数器&#34;同样,

SET @counter = 0; 
SELECT 
    (@counter := @counter +1) as counter,  
    title, 
    group_concat(artist_id) as artist_ids 
FROM `play_store`
GROUP BY title