Longitud máxima de MySQL y GROUP_CONCAT()
Estoy usando GROUP_CONCAT()
una consulta MySQL para convertir varias filas en una sola cadena. Sin embargo, la longitud máxima del resultado de esta función son 1024
caracteres.
Soy muy consciente de que puedo cambiar el parámetro group_concat_max_len
para aumentar este límite:
SET SESSION group_concat_max_len = 1000000;
Sin embargo, en el servidor que estoy usando, no puedo cambiar ningún parámetro. No utilizando la consulta anterior ni editando ningún archivo de configuración.
Entonces mi pregunta es: ¿Existe alguna otra forma de obtener el resultado de una consulta de varias filas en una sola cadena?
SET SESSION group_concat_max_len = 1000000;
es una configuración temporal, de alcance de sesión. Solo se aplica a la sesión actual. Debes usarlo así.
SET SESSION group_concat_max_len = 1000000;
select group_concat(column) from table group by column
Puede hacer esto incluso compartiendo alojamiento, pero cuando use otra sesión, deberá repetir el SET SESSION
comando.
El parámetro correcto para establecer la longitud máxima es:
SET @@group_concat_max_len = value_numeric;
value_numeric
debe ser > 1024; por defecto el group_concat_max_len
valor es 1024.