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

[SOLUCIONADO] Agrupar contenido [Group BY]

Estas en el tema de Agrupar contenido [Group BY] en el foro de Mysql en Foros del Web. Hola buenos dias, Estoy haciendo una consulta mysql y necesito agrupar el contenido de esta. Probe de varias formas pero sinceramente no me sale . ...
  #1 (permalink)  
Antiguo 09/11/2015, 08:19
 
Fecha de Ingreso: octubre-2009
Mensajes: 84
Antigüedad: 14 años, 6 meses
Puntos: 0
Agrupar contenido [Group BY]

Hola buenos dias,

Estoy haciendo una consulta mysql y necesito agrupar el contenido de esta. Probe de varias formas pero sinceramente no me sale .

Mi consulta inicial es esta:

Código MySQL:
Ver original
  1. SELECT  id_proveedor, id_producto, (((iva + 100) * (precio_unitario * cantidad)) / 100) as 'TOTAL'
  2. FROM lista_compras_productos
  3. WHERE id_compra = 1 AND precio_unitario > 0
  4. ORDER BY id_producto, TOTAL ASC

Y arroja este resultado:




Lo que tengo que agrupar es los "productos" con el mínimo precio, por ejemplo:

id_proveedor = 19 | id_producto = 5 | total = 6824,4
id_proveedor = 2271 | id_producto = 5 | total = 10599,6

Tiene que desaparecer el id_proveedor 2271 y quedar solo el 19.


Pruebas:

Probé agrupando por id_producto y a la columna total ponerle la función MIN.

El resultado fue bueno, el problema es que aparece siempre el mismo id_proveedor y en realidad cambia.


Saludos!

Última edición por gnzsoloyo; 09/11/2015 a las 08:35 Razón: Muy ma etiqutado.
  #2 (permalink)  
Antiguo 09/11/2015, 08:39
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, 5 meses
Puntos: 2658
Respuesta: Agrupar contenido [Group BY]

Es un caso de manual, que ya se ha consutlado centenares de veces en el foro. Te conviene usar el buscador para este tipo de problemas.
Anda mas o menos por acá:
Código MySQL:
Ver original
  1.         id_proveedor,
  2.         id_producto,
  3.         MIN(TOTAL) TOTAL
  4.     (SELECT  
  5.         id_proveedor,
  6.         id_producto,
  7.         (((iva + 100) * (precio_unitario * cantidad)) / 100) TOTAL
  8.     FROM lista_compras_productos
  9.     WHERE id_compra = 1
  10.         AND precio_unitario > 0
  11.     ORDER BY id_producto,id_producto, TOTAL ASC) Tabla1
  12. GROUP BY id_producto
__________________
¿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 09/11/2015, 08:51
 
Fecha de Ingreso: octubre-2009
Mensajes: 84
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Agrupar contenido [Group BY]

Muchas gracias. Funciona de maravilla!!

Saludos!!

Etiquetas: agrupar, contenido, group, select, sql
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 16:11.