Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2009, 07:17
ivan2009
 
Fecha de Ingreso: enero-2009
Mensajes: 67
Antigüedad: 15 años, 4 meses
Puntos: 1
sumar campos de tablas diferentes

Hola amigos necesito de su ayuda….!
Tengo dos tablas, en la tabla contrato hay un solo valor y en la tabla meses tengo varios valores, lo que deseo es sumar ese valor de la tabla 1 con todos los valores de la tabla 2 pero cuando no haya valores a sumar en la tabla meses, deseo que se muestre en la columna valorsumadomes el valor que contiene la tabla contrato, pero esto no me muestra y visualiza NULL.

Este es el query que ejecuto y me muestra lo siguientes :

SELECT contrato.codigomatricula, contrato.nombres,(contrato.valorunitario)+sum(mese s.valor) as valorsumadomes, contrato.valorunitario as valorcontrato
FROM contrato
JOIN meses ON meses.codigomatricula=contrato.codigomatricula group by contrato.nombres order by contrato.nombres

codigomatricula- nombres - valorsumadomes - valorcontrato

14185 ABAD----------- 64_________________16

13380 ABAR----------- _________________16

13184 ABAT----------- 64 _________________16

11693 ABRI----------- 64_________________16

10650 ACER----------- 64_________________16

13482 ACOS----------- 64_________________16

13411 ACOA-----------76_________________16

12543 ACUÑ-----------48_________________16

10247 AGAM-----------64_________________16

13484 AGILE----------- 64________________16

10652 AGILA-----------64_________________16

11605 AGUA----------- _________________16

10654 AGUU----------- 48_________________16

10655 AGAL----------- _________________16

También realice este query y realiza exactamente lo mismo que lo anterior, sin mostrarme el valor de la tabla contrato………………..

SELECT contrato.codigomatricula,contrato.nombres,
sum(MESES.VALOR)+(CONTRATO.VALORUNITARIO) AS Sumavaloremes,
contrato.valorunitario ValordeContrato
FROM CONTRATO,MESES
WHERE CONTRATO.CODIGOMATRICULA = MESES.CODIGOMATRICULA GROUP BY NOMBRES

Gracias por ayudarme amigos!

Última edición por ivan2009; 19/01/2009 a las 08:03