Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Query: usar GROUP BY?

Estas en el tema de Query: usar GROUP BY? en el foro de Mysql en Foros del Web. Hola Tengo esta linea que agrupa por cliente y suma sus compras . Esto funciona bien porque compras es un campo numérico. SELECT cliente , ...
  #1 (permalink)  
Antiguo 05/08/2010, 04:43
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Query: usar GROUP BY?

Hola

Tengo esta linea que agrupa por cliente y suma sus compras. Esto funciona bien porque compras es un campo numérico.
SELECT cliente , SUM(compras) FROM pedidos GROUP BY cliente

...pero necesitaría algo parecido a la funcion SUM para unir comentarios que es un campo de texto. Algo como:
SELECT cliente , UNIR(comentarios) FROM pedidos GROUP BY cliente

Se puede hacer esto?

gracias
  #2 (permalink)  
Antiguo 05/08/2010, 05:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Query: usar GROUP BY?

Código MySQL:
Ver original
  1.    cliente,
  2.    GROUP_CONCAT (comentarios)  comentarios
  3. FROM pedidos
  4. GROUP BY cliente;

Normalmente, eso encadena los contenidos de los diferentes campos agrupados, separándolos por comas. Para ponerles algo diferente, habría que usar SEPARATOR:

Código MySQL:
Ver original
  1.    cliente,
  2.    GROUP_CONCAT (comentarios SEPARATOR '##')  comentarios
  3. FROM pedidos
  4. GROUP BY cliente;

Lo que nunca probé es usar caracteres de control, que bien podría funcionar:
Código MySQL:
Ver original
  1.    cliente,
  2.    GROUP_CONCAT (comentarios SEPARATOR '\r\n')  comentarios
  3. FROM pedidos
  4. GROUP BY cliente;

Lo que puede suceder, dada la longitud del campo obtenido es que MySQL transforme el campo en un BLOB, lo que requeriría una conversión:
Código MySQL:
Ver original
  1.    cliente,
  2.    CAST(GROUP_CONCAT (comentarios SEPARATOR '\r\n')  AS CHAR) comentarios
  3. FROM pedidos
  4. GROUP BY cliente;
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 05/08/2010, 05:45
 
Fecha de Ingreso: diciembre-2005
Ubicación: Barcelona
Mensajes: 1.428
Antigüedad: 18 años, 4 meses
Puntos: 15
Respuesta: Query: usar GROUP BY?

gracias gnzsoloyo... claro como el agua!

Etiquetas: group, query
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:01.