Ver Mensaje Individual
  #1 (permalink)  
Antiguo 31/07/2013, 08:53
Netovil
 
Fecha de Ingreso: junio-2004
Mensajes: 11
Antigüedad: 19 años, 10 meses
Puntos: 0
Consulta para agrupar algunos resultados y otros no

Hola a todos.

Hace tiempo que no pedia ayuda posteando un nuevo tema, y creo que de MySQL es el primero, los otros fueron de PHP, me gusta buscar la solucion en temas anteriores, sin embargo, el dia de hoy vengo con una solicitud de apoyo ya que no se ni siquiera como buscar una solucion; anduve navegando por los temas de esa seccion pero no encontre lo que queria, les explico.

Estoy haciendo una solucion para una empresa que compra y vende chatarra, el desarrollo que estoy haciendo es exclusivamente en el area de compra de chatarra. Bueno, en esta empresa tienen varias categorias de proveedores de chatarra en las cuales lo que varia es el precio y pues tienen varios tipos de chatarra que compran (primera, segunda, fierro vaciado y lamina); dentro de las categorias, hay una que se llama "Publico en General" que es para personas que no tienen antecedentes de venta para con ellos, de los que van una sola vez y no regresan, a todos ellos los agrupan bajo el grupo de "Publico" (y quedan grabados para futuras compras) y se almacena la compra bajo el nombre del proveedor.

Bueno ahora mi problema; estoy haciendo un filtro donde se seleccionen 2 fechas y se obtenga el total comprado por tipo de chatarra entre esas fechas y ademas, quienes fueron los proveedores y cuanto trajeron, esto ya lo tengo y creo que funciona bien, el detalle es que quiero ademas, que todos los proveedores bajo la categoria "Publico" sean conjuntados (se sumen sus ventas) y aparezcan solamente como "Publico" y no cada uno con su nombre; el resto de los proveedores que no estan en esta categoria, si apareceran con el nombre y la suma de sus ventas, solamente se agruparan las ventas de todos los de la categoria "Publico" y como tal apareceran.

Con este codigo saco cada proveedor (no publico) y su total de ventas.

Código:
SELECT compras.nombre,SUM(compras.lamina) AS total, FROM `compras` INNER JOIN `provedores` ON compras.nombre=provedores.nombre WHERE compras.fechayhora BETWEEN '2013/07/01' AND '2013/07/30' AND provedores.categoria <> 'PUBLICO'  GROUP BY compras.nombre ORDER BY `total` DESC
En este caso es el query del tipo de chatarra "lamina" y las fechas son entre el 1 y el 30 de julio.
Este query funciona muy bien, peeeero me falta lo de "Publico", como lo saco y que ademas aparezca en el listado que se hace con "total" del proveedor con mayor aporte al menor (aqui entre los proveedores aparecera "Publico" como proveedor).

Se podra hacer con un solo query o necesitare 2?
Espero sus compentarios, de antemano gracias por el apoyo.

Saludos!!!!!!!!