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

Sumar campo de una tabla pero por cliente

Estas en el tema de Sumar campo de una tabla pero por cliente en el foro de Mysql en Foros del Web. Saludos señores teno una consulta y no se como realizarlo, tengo estas tablas: clientes ( idclie,nombres,email,apellidos) y esta tabla pedidos (idpedido,idclie,total,fecha) Lo que deseo es ...
  #1 (permalink)  
Antiguo 22/10/2007, 10:51
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Sumar campo de una tabla pero por cliente

Saludos señores teno una consulta y no se como realizarlo, tengo estas tablas:

clientes( idclie,nombres,email,apellidos) y esta tabla
pedidos(idpedido,idclie,total,fecha)

Lo que deseo es sumar el total de sus compras de los clientes:

Tengo esta consulta que me agrupa:
Cita:
SELECT clientes.idclie, clientes.nombres, clientes.email, clientes.apellidos, pedidos.idpedido, pedidos.idclie, pedidos.total, pedidos.fecha
FROM clientes, pedidos
WHERE clientes.idclie = pedidos.idclie
LIMIT 0 , 30
idclie | nombres | email | apellidos |idpedido |idclie | total | fecha |

1 | Vanessa | [email protected] | apeli | 1 | 1 | 20.00 | 2007-10-18
2 | Cliente2 | [email protected] | apeli | 2 | 2 | 10.00 | 2007-10-16
1 | Vanessa | [email protected] | apel | 3 | 1 | 35.00 | 2007-10-18
3 | Cliente3 | [email protected] | aplei | 4 | 3 | 15.00 | 2007-10-18


Quiero que salga asi:

idclie | nombres | email | apellidos |idpedido |idclie | total | fecha |

1 | Vanessa | [email protected] | apeli | 1 | 1 | 55.00 | 2007-10-18
2 | Cliente2 | [email protected] | apeli | 2 | 2 | 10.00 | 2007-10-16
3 | Cliente3 | [email protected] | aplei | 4 | 3 | 15.00 | 2007-10-18

Gracias
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #2 (permalink)  
Antiguo 22/10/2007, 15:36
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Re: Sumar campo de una tabla pero por cliente

Hay 2 cosas a considerar, si Vanessa tiene 2 pedidos siempre que saques el numero pedido te va a mostrar los dos campos, y por otro lado si quieres sacar el total de sus compras trata agregandole la funcion SUM

Trata con esto:
Código:
SELECT c.idclie, c.nombres, c.email, c.apellidos, p.idclie, SUM(p.total), p.fecha
FROM clientes c, pedidos p
WHERE c.idclie = p.idclie
Suerte!

Ps.: Si aun te sigue saliendo Vanessa 2 veces pero con los mismos valores agregale un DISTINCT despues de SELECT y deberia funcionar.
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #3 (permalink)  
Antiguo 22/10/2007, 15:48
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Re: Sumar campo de una tabla pero por cliente

Hola Gracias pro tu respuesta pero ya lo habia intentado de esa manera.
Pero me sale este error:

Cita:
consulta SQL: Documentación

SELECT clientes.idclie, clientes.nombres, clientes.email, clientes.apellidos, pedidos.idpedido, pedidos.idclie, SUM( pedidos.total ) , pedidos.fecha
FROM clientes, pedidos
WHERE clientes.idclie = pedidos.idclie

MySQL ha dicho: Documentación
#1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #4 (permalink)  
Antiguo 22/10/2007, 21:16
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
De acuerdo Re: Sumar campo de una tabla pero por cliente

Claro helthon! Tienes que hacer un group by al final!!!! siempre que utilizas un sum pues debes hacerle al final del query un group by sino siempre te muestra error .

Código:
tu query .... group by algun_atributo
Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
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 03:32.