Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Actualizar varias lineas a la vez

Estas en el tema de Actualizar varias lineas a la vez en el foro de Mysql en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 06/04/2012, 16:17
 
Fecha de Ingreso: marzo-2012
Mensajes: 53
Antigüedad: 12 años, 1 mes
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
  #2 (permalink)  
Antiguo 11/04/2012, 08:17
 
Fecha de Ingreso: enero-2010
Ubicación: Estelí, Nicaragua
Mensajes: 157
Antigüedad: 14 años, 3 meses
Puntos: 8
Respuesta: Actualizar varias lineas a la vez

Hola, seria bueno que pusieras la estructura de las tablas que usas para apreciar mejor el panorama y entender mejor lo que pretendes hacer, lo digo porque en el foro participan personas de diferentes países y no todos utilizan el mismo lenguaje para las cosas, por ejemplo catalogo.
  #3 (permalink)  
Antiguo 11/04/2012, 13:42
 
Fecha de Ingreso: marzo-2012
Mensajes: 53
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Actualizar varias lineas a la vez

Cita:
Iniciado por LENINCASCO Ver Mensaje
Hola, seria bueno que pusieras la estructura de las tablas que usas para apreciar mejor el panorama y entender mejor lo que pretendes hacer, lo digo porque en el foro participan personas de diferentes países y no todos utilizan el mismo lenguaje para las cosas, por ejemplo catalogo.
Hola paisano, estoy sorprendido de que no nos entendamos... ja-ja-ja. Soy de Chinandega.

Se trata de un catalogo de productos parecido a un Catálogo de Cuentas, o Nomenclatura de Cuentas de Contabilidad.

Este catálogo de productos está definido por Grupos, sub-grupos y detalle, por ejemplo así:

1 Venta de licores en General 15,000.00
11 Venta Licores Extranjeros 10,000.00
111 Shivas Reagal 6,000.00
112 Jhonny Walker 3,000.00
113 etc.... 1,000.00
12 Venta de Licores Nacionales 5,000.00
121 Ron Flor de Caña 3,000.00
122 Ron Plata 1,500.00
123 etc..... 500.00

Como muestra el ejemplo, lo que pretendo es hacer un único UPDATE desde otra tabla de MOVIMIENTOS DE PRODUCTOS en la cual se identifican con los códigos 111,112,113,121,122,123 (que en este caso son los codigos de último nivel o detalle).

Es decir, sumar los valores en la tabla de movimientos por cada producto, y luego actualizar en la tabla "catalogo" los valores que correspondan a cada producto específico, pero a la vez, actualizar el sub-grupo y grupo al que corresponden.

Asi, todos los códigos de productos que comienzan con 11 se van acumulando en el sub-grupo 11 y en el Grupo 1.

Esto lo tengo hecho desde hace muuuuuuuuuucho tiempo, pero en DBF's.

(Desafortunadamente no se que utilizar para que el ejemplo se muestre alineado,
talvez alguien en el foro me instruya)

Saludos.
  #4 (permalink)  
Antiguo 11/04/2012, 14:52
 
Fecha de Ingreso: enero-2010
Ubicación: Estelí, Nicaragua
Mensajes: 157
Antigüedad: 14 años, 3 meses
Puntos: 8
Respuesta: Actualizar varias lineas a la vez

Que tal amigo, un saludo.

Bueno lo de poner la estructura de la tabla era para que otros del foro te puedan ayudar a parte de mi persona, por supuesto que entiendo lo que quieres hacer, pero aun no se como ayudarte, entonces mientras tanto es possible que otros del foro te puedan dar una mano.

pero estamos ahi viendo posibilidades al problema.

Etiquetas: join, lineas, select, tabla, vez
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 23:42.