Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/04/2012, 16:17
falegria230349
 
Fecha de Ingreso: marzo-2012
Mensajes: 53
Antigüedad: 12 años, 2 meses
Puntos: 3
Actualizar varias lineas a la vez

Buenas tardes, amigos del foro. Aquí estamos de nuevo solicitando vuestra guía.

Tengo el siguiente código que trabaja perfecto (lo diseñó gnzsoloyo)
Código:
UPDATE catalogo T1 INNER JOIN (SELECT codicont, SUM(debe) valorsumado FROM comprobd GROUP BY codicont) T2
ON T1.codicont = t2.codicont SET T1.movdebe = T2.valorsumado
Ahora bien, partiendo de este código he tratado de hacer las siguientes actualizaciones sin lograrlo.

Código:
UPDATE catalogo T1 INNER JOIN (SELECT codigo, SUM(debe) valorsumado FROM comprobd GROUP BY codigo) T2
ON T1.codigo = t2.codigo SET T1.valor = T2.valorsumado 
ON T1.codigo = SUBSTRING(t2.codigo,1,1) SET T1.valor = T1.valor + T2.valorsumado 
ON T1.codigo = SUBSTRING(t2.codigo,1,2) SET T1.valor = T1.valor + T2.valorsumado;
Me explico. Tengo una tabla asi:

Codigo Valor
1
11
111
112

Los codigos 111 y 112 son de ultimo nivel. Lo que trato de hacer es que el mismo valor sumado sea aplicado a los niveles padres 1,11 incrementando sus valores, debiendo quedar asi, tomando como ejemplo los valores 100 para codigo 111 y 200 para codigo 112. La aplicacion a los codigos de ultimo nivel lo hace bien, pero no encuentro forma de actualizar los codigos padres:

Codi go Valor
1 300
11 300
111 100
112 200

Pueden ayudarme a solucionar este caso?

Saludos, y gracias de antemano.

Última edición por falegria230349; 06/04/2012 a las 16:32