Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/03/2011, 11:41
Erzengel_Kriz
 
Fecha de Ingreso: diciembre-2005
Mensajes: 30
Antigüedad: 18 años, 5 meses
Puntos: 0
Pregunta Me esta sumando mal un Group By

Hola, tengo una duda ya que no me cuadra el Qry que posteo mas abajo.

Estoy ejecutando por separado los qrys que tengo en el union sumo los importes y los comparo con la suma de los importes del qry completo que lo único que creo que hago es agrupar los registros y me da resultado distinto, no se como pasa eso, ojala ustedes vean algo raro que me pueda identificar el porque la agrupación me sale distinto.
(Nota: si agrupo por el ID me da un solo registro por cada uno y así si me cuadra pero lo que quiero saber es porque al agruparlo sin ese id que omití aquí no me da la sumatoria correcta )

declare @ProcYear int = 2010
declare @ProcMonth int = 1


select sum(IMPORTE) as IMPORTE,
@ProcYear as PROCYEAR
,@ProcMonth as PROCMONTH
,SISTEMAORIGEN
,IDRAMO
,1303 as IDCONCEPTOCONTABLE
,IDUEN
,IDMONEDA
,POLIZA
,IDAGENTE
,IDOFICINA
,IDSUCURSAL
,IDCLIENTE
,IDSOLICITUD
,RAMO
,SUBRAMO
,RAMOINCISO
,SUBRAMOINCISO
,NUMEROENDOSO
,FECHAREGISTRO
,FECHAEVENTO
,FECHAINICIO
,FECHAFIN
,FECHACONTABILIDAD
,1 as TIPOCAMBIO
,0 as DUMMYFLAG
,ORIGENCLIENTE
,MODULO
,MOVIMIENTO
,TASAIVA
From (
select
@ProcYear as PROCYEAR
,@ProcMonth as PROCMONTH
,SISTEMAORIGEN
,IDRAMO
,1303 as IDCONCEPTOCONTABLE
,IDUEN
,IDMONEDA
,POLIZA
,IDAGENTE
,IDOFICINA
,IDSUCURSAL
,IDCLIENTE
,IDSOLICITUD
,RAMO
,SUBRAMO
,RAMOINCISO
,SUBRAMOINCISO
,NUMEROENDOSO
,FECHAREGISTRO
,FECHAEVENTO
,FECHAINICIO
,FECHAFIN
,FECHACONTABILIDAD
,IMPORTE
,1 as TIPOCAMBIO
,0 as DUMMYFLAG
,ORIGENCLIENTE
,MODULO
,MOVIMIENTO
,TASAIVA
from dbo.t0046 nolock
where PROCYEAR = 2010
and PROCMONTH = 1
and IDUEN = '1234'
and POLIZA > -1
and IDCLIENTE > 0
and IDAGENTE is not null
and IMPORTE is not null
union
select
@ProcYear as PROCYEAR
,@ProcMonth as PROCMONTH
,SISTEMAORIGEN
,IDRAMO
,1303 as IDCONCEPTOCONTABLE
,IDUEN
,IDMONEDA
,POLIZA
,IDAGENTE
,IDOFICINA
,IDSUCURSAL
,IDCLIENTE
,IDSOLICITUD
,RAMO
,SUBRAMO
,RAMOINCISO
,SUBRAMOINCISO
,NUMEROENDOSO
,FECHAREGISTRO
,FECHAEVENTO
,FECHAINICIO
,FECHAFIN
,FECHACONTABILIDAD
,IMPORTE * -1 AS IMPORTE
,1 as TIPOCAMBIO
,0 as DUMMYFLAG
,ORIGENCLIENTE
,MODULO
,MOVIMIENTO
,TASAIVA
from dbo.t0046 nolock
where PROCYEAR = 2009
and PROCMONTH = 12
and IDUEN = '1234'
and POLIZA > -1
and IDCLIENTE > 0
and IDAGENTE is not null
and IMPORTE is not null
)t
group by
SISTEMAORIGEN
,IDRAMO
,IDUEN
,IDMONEDA
,POLIZA
,IDAGENTE
,IDOFICINA
,IDSUCURSAL
,IDCLIENTE
,IDSOLICITUD
,RAMO
,SUBRAMO
,RAMOINCISO
,SUBRAMOINCISO
,NUMEROENDOSO
,FECHAREGISTRO
,FECHAEVENTO
,FECHAINICIO
,FECHAFIN
,FECHACONTABILIDAD
,ORIGENCLIENTE
,MODULO
,MOVIMIENTO
,TASAIVA
having sum(IMPORTE) <> 0