Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   ayuda en una consulta please (https://www.clubdelphi.com/foros/showthread.php?t=55337)

lakers 14-04-2008 15:31:47

ayuda en una consulta please
 
muy buenas a todos los foreros.
haber si me podeis hechar la mano por fa en una consulta,basicamente mi modelo de datos es el siguiente :
Código PHP:

nombre descrip     precio cantidad total 
pepe     libros          3.45      456    1573.20
pepe     hierro         56.78       2     113.55 
Manuel  libros          3.45       456   1573.20
Manuel  placa base   300.78    97    29175.65
Manuel  torres          78          20   156.00 

quiero saber si hay alguna posiblidad mediante un query que me permite
calcular el total de compra de cada cliente a cada vez que se cambie el nombre (p.e:
al pasar de pepe a Manuel me saca el total de compra de pepe que se supone 1573.20+113.55 junto con el numero de registros de cada descripcion ) o sea:
pepe libros 3.45 456 1573.20
pepe hierro 56.78 2 113.55
--------
1686.75 2
2: el numero de articulos de cada cliente.
espero que me explicado + o -.:p:D
en la espera de vuestras respuestas les saludo
atentamente .
gracias.

enecumene 14-04-2008 15:58:43

Código SQL [-]
SELECT nombre, descripcion, precio, cantidad, total, (select count(nombre) from TABLA) as totalitem,
(select sum(total) FROM TABLA) as totalcliente FROM TABLA group by nombre, descripcion

Prueba con esta consulta a ver si te resulta.

Saludos.

lucasarts_18 14-04-2008 17:51:16

Hola:

Código SQL [-]
SELECT nombre, descripcion, sum(precio), sum(cantidad), sum(total)
 FROM TABLA group by nombre, descripcion

Hasta Luego .-

lakers 14-04-2008 20:18:28

gracias enecumene y lucasart por vuestras respuestas
la verdad que intenté probarlo pero me falla sabiendo que
mi base de datos está compuesta por 3 tablas.
cliente(id(prim_key),nombre,direccion)
compra(id(p.key),id_cliente,id_prod,cantidad,fecha)
producto(id(p.key),descp,precio) siendo
->(id_cliente clave foranea id(cliente)
->id_prod clave foranea id(prod)
o sea el resultado de la tabla de arriba nombre,descrp,precio,cantidad,total
lo he obtenido a partir de la siguiente consulta:
Código SQL [-]
select cliente.nombre,producto.descrip,producto.precio,compra.cantidad,producto.precio * compra.cantidad AS total from 
cliente,producto,compra where  compra.id_cliente =cliente.id and 
compra.id_prod=producto.id
perdoname por haberle molestado pero basicamente soy una persona novata en este mundo de mysql.
saludos

lucasarts_18 15-04-2008 22:30:19

Hola:

No es ninguna molestia, para la próxima debes especificar desde el comienzo todo el ambito que rodea a tu problema.

Intenta con esta query.

Código SQL [-]
select cliente.nombre,
       producto.descrip,
       producto.precio,
       sum(compra.cantidad),
      sum(producto.precio * compra.cantidad) AS total 
from cliente,producto,compra 
where  compra.id_cliente = cliente.id 
  and  compra.id_prod = producto.id
group by cliente.nombre,
         producto.descrip,
         producto.precio

Hasta Luego .-

lakers 15-04-2008 23:53:23

gracias lucasarts
por tu ayuda,ahora si funciona
muchisima gracias
saludos


La franja horaria es GMT +2. Ahora son las 15:12:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi