Necesito ayuda con consultas en lenguaje SQL para mi base de datos

Saludos
Tengo una tabla llamada Cuenta Corriente que presenta los sigtes. Campos principales:
ID = Describe la condicion del registro (P=pagado, A=sin pago)
CONTRIB= Codigo contribuyente
VDEUDA= deuda total
VABON= pagos efecutados
TRIBUTO= Tributos por los q se efectuan los pagos, los cuales son 001,005,006 y 035
AINI = Año correspondiente al pago
PEINI = Periodo de pago
Ahora te explico la mecánica, a cada contribuyente se le genera al año por el TRIBUTO 001 cuatro recibos y por los TRIBUTOS 005,006 y 035, se le generan al año, 12 recibos.
Lo que deseo es la relación de todos los contribuyentes (CONTRIB) agrupados por el campo TRIBUTO acompañados del total de VDEUDA y el total de VABON
Es decir, esto es lo que desearía que se de como resultado (CONTRIB, TRIBUTO, VDEUDA, VABON)x cada contribuyente:
00500 001 10500 5000
00500 005 15600 6500
00500 006 18600 1000
00500 035 13500 5600
Muchas gracias

1 Respuesta

Respuesta
1
¿Y no tendrías que hacer operaciones de suma acumulada o de suma de lo acumulado menos pagos efectuados? Y sobre el atributo si está 'pagado' o 'sin pago' ... ¿NO tendrías que hacer nada? ¿Ni sobre los años o periodos?
Bueno, te pongo un ejemplo de acumulado.
Select CONTRIB, TRIBUTO, SUM(VDEUDA)as DEUDA, SUM(VABON) as PAGADO
From Tabla_De_Cuenta_Corriente
Group by CONTRIB, TRIBUTO
Order by CONTRIB, TRIBUTO
Puedes elegir otros métodos de ordenación como podría ser : quien adeuda más, quien ha pagado más ..., etc.
Si quieres restringir a nivel de Tributo por los que indicas, sólo tendrías que añadirle :
Select CONTRIB, TRIBUTO, SUM(VDEUDA)as DEUDA, SUM(VABON) as PAGADO
From Tabla_De_Cuenta_Corriente
Where TRIBUTO in ('001','005','006','035')
Group by CONTRIB, TRIBUTO
Order by CONTRIB, TRIBUTO
Deseo que con estas contestaciones quede solucionado. Si tienes problemas o alguna duda. NO DUDES en contactar conmigo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas