Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/04/2008, 15:34
Avatar de xcars
xcars
 
Fecha de Ingreso: mayo-2005
Ubicación: El Salvador
Mensajes: 753
Antigüedad: 19 años
Puntos: 4
update if isnull

saludos, creo que me he atorado en algo que aparentemente es simple, tengo el siguiente update

Código:
update fsv_pagos_oficiales a, fsv_pagos_no_oficiales b
set a.codemp=if(isnull(b.codemp),b.codemp,51)
where a.prestamo_id=b.prestamo_id
es simple, en la tabla llamada fsv_pagos_no_oficiales hay una lista de pagos que contiene un emplado asignado (codemp)
y fsv_pagos_oficiales no tiene este dato default, por lo cual antes de generar algunos reportes deseo que todos aquellos campos que si tengan un codemp en la tabla fsv_pagos_no_oficiales se actualicen con este codemp, y a todas los demas pagos, asignarles el codemp 51.

mas que obvio el codigo esta mal, ya que al poner esta linea
where a.prestamo_id=b.prestamo_id

me esta considerando solo las coincidencias entre ambas tablas, pero yo necesito considerar todo, y las que existan que les ponga el dato correspondiente y las que no les ponga 51, intentare con EXISTS pero si alguien me hehca la mano, se lo agradecere mucho.
saludos
__________________
Con Microaplicaciones puedes hacer tu tienda en línea de forma sencilla y rápida, sin costos ocultos y con mucha responsabilidad.