separated - cadena separada por comas de valores seleccionados en mysql
mysql string to array (7)
Quiero convertir valores seleccionados en una cadena separada por comas en MySQL. Mi código inicial es el siguiente:
SELECT id FROM table_level where parent_id=4;
Que produjo:
''5''
''6''
''9''
''10''
''12''
''14''
''15''
''17''
''18''
''779''
Mi salida deseada se vería así:
"5,6,9,10,12,14,15,17,18,779"
El separador predeterminado entre los valores en un grupo es coma (,). Para especificar cualquier otro separador, use SEPARATOR
como se muestra a continuación.
SELECT GROUP_CONCAT(id SEPARATOR ''|'')
FROM `table_level`
WHERE `parent_id`=4
GROUP BY `parent_id`;
5 | 6 | 9 | 10 | 12 | 14 | 15 | 17 | 18 | 779
Para eliminar el separador, use SEPARATOR ''''
SELECT GROUP_CONCAT(id SEPARATOR '''')
FROM `table_level`
WHERE `parent_id`=4
GROUP BY `parent_id`;
Consulte para obtener más información GROUP_CONCAT
Mira esto
SELECT GROUP_CONCAT(id) FROM table_level where parent_id=4 group by parent_id;
Primero, set group_concat_max_len
; de lo contrario, no le dará todos los resultados:
SET GLOBAL group_concat_max_len = 999999;
SELECT GROUP_CONCAT(id) FROM table_level where parent_id=4 group by parent_id;
Prueba esto
SELECT CONCAT(''"'',GROUP_CONCAT(id),''"'') FROM table_level
where parent_id=4 group by parent_id;
El resultado será
"5,6,9,10,12,14,15,17,18,779"
Si tiene varias filas para parent_id.
SELECT GROUP_CONCAT(id) FROM table_level where parent_id=4 GROUP BY parent_id;
Si quieres reemplazar el espacio con una coma
SELECT REPLACE(id,'' '','','') FROM table_level where parent_id=4;
Use el método group_concat
en mysql
Use la función group_concat() de mysql.
SELECT GROUP_CONCAT(id) FROM table_level where parent_id=4 GROUP BY parent_id;
Te dará cadena concatenada como:
5,6,9,10,12,14,15,17,18,779