Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/11/2014, 11:25
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: INNER JOIN multiplica resultados

Si lo que quieres es fecha numero de pedidos y kilos total (no por alimentos)


Código MySQL:
Ver original
  1. SELECT TE.fecha AS fecha,
  2.         COUNT(PM.numero) AS Pedidos,
  3.         SUM(DE.peso_unitario*AP.cantidad) Kilos
  4. FROM pedido_modelo PM
  5. INNER JOIN turno_entrega TE ON PM.turno_entrega_id=TE.id
  6. INNER JOIN alimento_pedido AP ON PM.numero=AP.pedido_numero
  7. INNER JOIN detalle_alimento DE ON AP.detalle_alimento_id=DE.id_detallealimento
  8. GROUP BY TE.fecha

es practicamente lo mismo que tenias si no te funciona deberias describir que tienes en cada tabla....no acabo de imaginar que es pedido_modelo.... si eso es la cabecera del pedido debria tener la fecha de entrega no en estar en una tabla de turnos de entrega.....

Pedido
idPedido
fecha
...

DetallePedido
idDetallePedido
idPedido
idAlimento
cantidad

Alimentos
idAlimento
Nombre
Unidades

????????????
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.