Ver Mensaje Individual
  #1  
Antiguo 27-07-2012
Avatar de RebeccaGL
RebeccaGL RebeccaGL is offline
Miembro
 
Registrado: ene 2008
Posts: 199
Reputación: 19
RebeccaGL Va por buen camino
Duda sobre suma

Por ejemplo tengo 2 tablas (Tabla1 y Tabla2) la Tabla1 esta enlazada con la Tabla2

Tabla1.ID1
Tabla1.TipDoc

Tabla2.ID2
Tabla2.Cant
Tabla2.Item

Código SQL [-]
select T1.TipDoc, 
         count(T1.TipDoc) as Movimientos,
         sum(T2.Cant) as Cant,
         T2.Item

from Tabla1.T1, Tabla2.T2

where  (T1.ID1 = T2.ID2)

group by (T1.TipDoc
)

Lo que pasa es lo siguiente solo tengo 2 movimientos en la Tabla1, en la clausula "count(T1.TipDoc) as Movimientos" me deberia devolver el resultado 2 y me devuelve 6.
La Tabla1 tiene dos registros, ahora bien cada registro de la Tabla1 le nacen 3 registros osea a la Tabla2 al hacer la consulta me pone asi.

Tabla1
ID TipDoc
-----------
1 Factura
2 Factura

Tabla 2
ID2 Cant Item
--------------------
1 1 Pollo
2 1 Asado
3 1 Pizza

Al hacer la consulta lo pone asi

TipoDoc Movimientos Cantidad
---------------------------------
Factura 6 3

En movimientos deberia ser 2 y no 6 como soluciono ese problema.
Me duplica los movimientos, sera porque las dos tablas estan unidas.
Responder Con Cita