I have tables jeans
and bahanbenang
and I want to use group_concat
to concatenate multiple MySQL rows into one field. This is my SQL code:
SELECT jeans.id_jeans, jeans.id_benang, GROUP_CONCAT( bahanbenang.warna
SEPARATOR ', ' ) AS warna, GROUP_CONCAT( bahanbenang.jenis
SEPARATOR ', ' ) AS jenis
FROM jeans
LEFT JOIN bahanbenang ON jeans.id_benang = bahanbenang.id_benang
GROUP BY jeans.id_jeans
giving the following result:
My main question is why can't the resulting query return more than one value in columns warna
and jenis
?
I want the result to be like this:
*update Iam trying following thi query
SELECT
jeans.id_jeans, jeans.id_benang,
GROUP_CONCAT( bahanbenang.warna SEPARATOR ', ' ) AS warna,
GROUP_CONCAT( bahanbenang.jenis SEPARATOR ', ' ) AS jenis
FROM jeans
LEFT JOIN bahanbenang ON FIND_IN_SET(bahanbenang.id_benang, jeans.id_benang) = 1
GROUP BY jeans.id_benang
but the result same
The JOIN condition should be improved. Try the following query.
SELECT
jeans.id_jeans, jeans.id_benang,
GROUP_CONCAT( bahanbenang.warna SEPARATOR ', ' ) AS warna,
GROUP_CONCAT( bahanbenang.jenis SEPARATOR ', ' ) AS jenis
FROM jeans
LEFT JOIN bahanbenang ON FIND_IN_SET(bahanbenang.id_benang, jeans.id_benang) = 1
GROUP BY jeans.id_benang
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.