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

Actualizar datos de campos desde otra tabla

Estas en el tema de Actualizar datos de campos desde otra tabla en el foro de Mysql en Foros del Web. Saludos a todos, tengo la siguiente inquietud: tengo creado un sistema de préstamos, deseo que cuando se elimine un pago de la tabla "Pagos" se ...
  #1 (permalink)  
Antiguo 16/05/2017, 11:17
Avatar de heberthm  
Fecha de Ingreso: noviembre-2013
Ubicación: Cali
Mensajes: 65
Antigüedad: 6 años, 1 mes
Puntos: 1
Pregunta Actualizar datos de campos desde otra tabla

Saludos a todos, tengo la siguiente inquietud: tengo creado un sistema de préstamos, deseo que cuando se elimine un pago de la tabla "Pagos" se descuente el valor de la cuota y del abono (si se ha hecho un abono a la deuda) al campo saldo ubicado en la tabla "préstamos". hasta ahora tengo el siguiente código dentro de un trigger de Mysql:

UPDATE prestamos P

INNER JOIN pagos C ON P.cedula = C.cedula
SET P.saldo = (P.saldo) - (C.cuota + C.abono),
P.cuotas_pagadas = P.cuotas_pagadas - 1,
P.cuotas_por_pagar = P.cuotas_por_pagar + 1
WHERE C.cedula = P.cedula
AND C.No_pago = No_pago

El anterior código me está actualizando el campo saldo del a tabla "préstamo" pero de varios registros y debería sólo actualizar el registro al que corresponde la cédula dentro de la clausula WHERE.
Gracias de antemano por la colaboración que me puedan prestar.
__________________
Hebeth Mazuera
  #2 (permalink)  
Antiguo 16/05/2017, 11:40
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 13 años, 5 meses
Puntos: 774
Respuesta: Actualizar datos de campos desde otra tabla

fijate que primero estas haciendo un join de prestamos y pagos por el campo cedula, asi que este update para empezar traera los registros que hagan match y solo dejara aquellos en donde C.No_pago = No_pago, si el No_pago se repite en estas tablas esa es la razon por la cual te esta dando resultados que no esperas. Te recomiendo que primero hagas un select con esas condiciones y veas que resultados regresa, ya cuando lo tengas correctamente filtrado entonces es cuando deberias de aplicar el update :)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 16/05/2017, 11:54
Avatar de heberthm  
Fecha de Ingreso: noviembre-2013
Ubicación: Cali
Mensajes: 65
Antigüedad: 6 años, 1 mes
Puntos: 1
Respuesta: Actualizar datos de campos desde otra tabla

Gracias Libras por tu respuesta, revisaré mi código.
__________________
Hebeth Mazuera

Etiquetas: campos, registro, sql, tabla
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 05:51.