Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/07/2012, 23:43
snchzantonio
 
Fecha de Ingreso: julio-2012
Ubicación: en una cueva
Mensajes: 6
Antigüedad: 11 años, 10 meses
Puntos: 0
mysql duda obteniendo sumatoria de campos

Hola y buenos dias ,este es mi primer tema , siempre reviso foros del web por que es uno de los pocos foros donde responden dudas y no te responden con un tajante : GOOGLEALO NOVATO!!. de todas maneras la duda ya la googlee y no encontre solucion.

Dejando el preambulo atras, les presento mi problema, estoy aprendiendo mysql por mi cuenta:

estas son las tablas de mi base de datos

CREATE DATABASE IF NOT EXISTS tiendita

CREATE TABLE IF NOT EXISTS `clientes` (
`CodCli` varchar(5) NOT NULL,
`NomCli` varchar(15) NOT NULL
) ;



CREATE TABLE IF NOT EXISTS `detalle` (
`NumFac` int(15) NOT NULL,
`CodProd` varchar(15) NOT NULL,
`Cant` int(5) NOT NULL
);




CREATE TABLE IF NOT EXISTS `facturas` (
`NumFac` int(15) NOT NULL,
`CodFac` varchar(15) NOT NULL,
`Monto` float NOT NULL
) ;


CREATE TABLE IF NOT EXISTS `productos` (
`CodProd` varchar(15) NOT NULL,
`NomProd` varchar(15) NOT NULL,
`Existencia` int(9) NOT NULL,
`Alicuota` int(3) NOT NULL,
`Precio` float NOT NULL,
`Costo` float NOT NULL
) ;


Quiero obtener un lista que muestre de cada factura los siguientes datos
numero de la factura, nombre del cliente y el total de productos con alicuota en igual a cero de cada factura
ejemplo :


[I]NumFac NomCli productosExentos
1 juan 0
2 pepe 3
3 ana 2[/I]


yo hice esta consulta


SELECT factura.NumFac, cliente.NomCli, COUNT( alicuota )
FROM detalle, producto, cliente, factura
WHERE producto.CodProd = detalle.CodProd
AND cliente.CodCli = factura.CodCli
GROUP BY factura.NumFac


sin embargo en vez de los producto con alicuota igual a cero de cada factura, me devuelve la cantidad de productos con alicuota igual a cero en toda al tabla :
ejemplo: si hay 8 productos en factura con alicuota igual a cero

NumFac NomCli productosExentos
1 juan 8
2 pepe 8
3 ana 8


agradesco desde ahora cualquier ayuda (o critica).