encabezado y detalle inner join

24/09/2007 - 17:48 por Erick Sanchez | Informe spam
Bien estoy tratando de realizar un query con inner join donde relaciono 3
tablas tabla 1 (maestro clientes) tabla2 (resumen maestro cuenta x cobrar -
totales) tabla 3 transacciones abiertas en cuentas por cobrar donde aparece
el detalle de cada transaccion correspondiente al acumulado de la tabla 2...
el query es el siguiente

SELECT tabla2.CUSTNMBR, RM00101.CUSTNAME, tabla1.FNCHPCNT, tabla2.CUSTBLNC,
tabla3.DOCNUMBR, tabla3.DOCDATE,

RM20101.DUEDATE

FROM tabla2 INNER JOIN

tabla1 ON tabla2.CUSTNMBR = tabla1.CUSTNMBR INNER JOIN

tabla3 ON tabla2.CUSTNMBR = tabla3.CUSTNMBR order by tabla2.CUSTNMBR

el resultado es el siguiente

numero cliente nombre cargofinanciero saldo numerodoc fechadoc
fechavenc
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SLS11015 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SLS11016 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SVC1000 00:00.0 00:00.0


en el resultado me sale solo el acumulado pero repetido tantas veces como
aparezca en la tabla3 es decir que este cliente que sale en el resultado
tiene 3 facturas las cuales dan un total de 23333.13 y asi sucesivamente
aparece con los demas clientes.

Quisera saber de que manera tendria que modificar el query para que los
resultados salgan de la siguiente forma

numero cliente nombre cargofinanciero saldo numerodoc fechadoc
fechavenc
AARONFIT0001 Aaron Fitz Electrical
150 23333.13
AARONFIT0001 Aaron Fitz Electrical
150 8514.22 SLS11016 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 6812.14 SVC1000 00:00.0 00:00.0


AARONFIT0001 Aaron Fitz Electrical
150 8006.77 SLS11015 00:00.0 00:00.0


de tal manera que me salga el total que aparece en la tabla 2 y seguido el
detalle de ese total el cual se encuentra en la tabla 3... gracias...
 

Leer las respuestas

#1 Carlos M. Calvelo
24/09/2007 - 21:10 | Informe spam
On 24 sep, 17:48, "Erick Sanchez" wrote:
Bien estoy tratando de realizar un query con inner join donde relaciono 3
tablas tabla 1 (maestro clientes) tabla2 (resumen maestro cuenta x cobrar -
totales) tabla 3 transacciones abiertas en cuentas por cobrar donde aparece
el detalle de cada transaccion correspondiente al acumulado de la tabla 2...
el query es el siguiente

SELECT tabla2.CUSTNMBR, RM00101.CUSTNAME, tabla1.FNCHPCNT, tabla2.CUSTBLNC,
tabla3.DOCNUMBR, tabla3.DOCDATE,

RM20101.DUEDATE

FROM tabla2 INNER JOIN

tabla1 ON tabla2.CUSTNMBR = tabla1.CUSTNMBR INNER JOIN

tabla3 ON tabla2.CUSTNMBR = tabla3.CUSTNMBR order by tabla2.CUSTNMBR

el resultado es el siguiente

numero cliente nombre cargofinanciero saldo numerodoc fechadoc
fechavenc
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SLS11015 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SLS11016 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 23333.13 SVC1000 00:00.0 00:00.0

en el resultado me sale solo el acumulado pero repetido tantas veces como
aparezca en la tabla3 es decir que este cliente que sale en el resultado
tiene 3 facturas las cuales dan un total de 23333.13 y asi sucesivamente
aparece con los demas clientes.

Quisera saber de que manera tendria que modificar el query para que los
resultados salgan de la siguiente forma

numero cliente nombre cargofinanciero saldo numerodoc fechadoc
fechavenc
AARONFIT0001 Aaron Fitz Electrical
150 23333.13
AARONFIT0001 Aaron Fitz Electrical
150 8514.22 SLS11016 00:00.0 00:00.0
AARONFIT0001 Aaron Fitz Electrical
150 6812.14 SVC1000 00:00.0 00:00.0

AARONFIT0001 Aaron Fitz Electrical
150 8006.77 SLS11015 00:00.0 00:00.0

de tal manera que me salga el total que aparece en la tabla 2 y seguido el
detalle de ese total el cual se encuentra en la tabla 3... gracias...



Si añades la columna "detalle de ese total" de la tabla 3 a tu
select te quedará algo así:

AARONFIT0001 ... 150 23333.13 SLS11015 8006.77 ...
AARONFIT0001 ... 150 23333.13 SLS11016 8514.22 ...
AARONFIT0001 ... 150 23333.13 SVC1000 6812.14 ...

Si además añades las claves primarias de tabla1 y tabla2
podrás utilizarlas en la aplicación o reporte que utiliza
esta consulta para agrupar y presentar el total (y demás
columnas de tabla1 y tabla2) solo una vez por grupo.

Saludos,
Carlos

Preguntas similares