Foros del Web » Programando para Internet » ASP Clásico »

sumar registros

Estas en el tema de sumar registros en el foro de ASP Clásico en Foros del Web. Hola, muy buenas, soy nueva en el foro y tengo una consulta en Acces 2003, que ya llevo varios días tratando de ejecutarla pero no ...
  #1 (permalink)  
Antiguo 01/11/2006, 09:55
 
Fecha de Ingreso: octubre-2006
Mensajes: 1
Antigüedad: 17 años, 7 meses
Puntos: 0
Hola, muy buenas, soy nueva en el foro y tengo una consulta en Acces 2003, que ya llevo varios días tratando de ejecutarla pero no puedo hacerla, sería de gran ayuda su orientación, es urgente resolver esa duda, gracias de antemano.

Son dos tablas T1 y T2 que están relacionadas y necesito la suma de registros de T2.campo9 (es Nùmero) pero condicionado a sumar aquellas filas (registros) especificados en el T2.campo8 (es Nùmero) pero también se relaciona con el valor especificado en el T1.campo7 (es Nùmero), los tres últimos campos presentan la forma:

T1.campo7 T2.campo8 T2.campo9
2 1 100000
2 2 150000
3 1 200000
3 2 0
3 3 50000
1 1 250000

Es decir, en cada registro de T1.campo7 se refleja el total de miembros (registros) que corresponden a T2.campo8 y T2.campo9. Necesito sumar (T2.campo9) para cada valor especificado en T2.campo8 hasta T1.campo7, y colocar el resultado de dicha suma en cada registro de T2.campo10, es decir, consulta resultante se esperaría:

T1.campo7 T2.campo8 T2.campo9 T2.campo10
2 1 100000 250000
2 2 150000 250000
3 1 200000 220000
3 2 0 220000
3 3 20000 220000
1 1 250000 250000


SELECT T1.Campo1, T1.Campo2, T1.Campo3, T1.Campo4, T1.Campo5,
T1.Campo6, T1.Campo7, T2.Campo8, Sum(T2.Campo9) AS SumaDeCampo9,
T1.Campo10 FROM T1 INNER JOIN T2 ON (T1.Campo1 = T2.Campo1)
AND (T1.Campo2 = T2.Campo2) AND (T1.Campo3 = T2.Campo3) AND
(T1.Campo4 = T2.Campo4) AND (T1.Campo5 = T2.Campo5) AND
(T1.Campo6 = T2.Campo6)
GROUP BY T1.Campo1, T1.Campo2, T1.Campo3, T1.Campo4, T1.Campo5,
T1.Campo6, T1.Campo7, T2.Campo8, T1.Campo10
HAVING (((Sum(T2.Campo9))>=0));

Hice una subconsulta:
Exists (SELECT T2. campo8, sum(T2.campo9) FROM T2 WHERE T2.campo8 BETWEEN
(T2.Campo8>=1 AND T2.Campo8= T1.Campo7)

Soy nueva en este tema de consultas, me podeis ayudar?,..... Gracias
  #2 (permalink)  
Antiguo 01/11/2006, 19:29
Avatar de goteen_mx  
Fecha de Ingreso: abril-2005
Ubicación: D.F.
Mensajes: 403
Antigüedad: 19 años, 2 meses
Puntos: 37
SELECT B.t1, B.t2, B.tmonto, (select sum(tmonto) from tabla2 as A where A.t1=B.t1 ) AS suma
FROM Tabla2 as B;

t1=t1.campo7
t2=t2.campo8
tmonto=t2.campo9
suma=t2.campo10

mira cree una tabla llamada tabla2 con la primera estructura que nos estas dando y con esta consulta me da el resultado que necesitas, lo que no se es como es tu relacion entre tabla 1 y 2 pero basicamente esta consulta hace lo que necesitas creo

ah y creo que en tu primera tabla en el 3 3 50000
era 20000 por que si no, no veo como puede salir 220000 en el resultado

saludos bye
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:20.