Tengo una tabla llamada afiliadoscontrol y otra afiliados , relacionadas por el id del afiliado, afiliados guarda los datos del afiliado y afiliadoscontrol guarda una lista de codigos de control de cuentas de cada afiliado de una mutual, se podria decir que este codigo esta asociado a cada trabajo que tiene un afiiliado de la mutual , es decir si trabaja en dos partes , este afiliado podria tener dos codigos de control distintos.
Ahora bien, por razones de un mejor ordenamiento y control he agregado un campo mas a la tabla que en el caso de que tenga dos codigos de control, me diga cual seria el principal, esto es para realizar determinada operaciones como ser el cobro de la cuota social, este campo es de tipo numerico y tiene valor cero o uno.
El problema es que debo poner un valor de un uno a este campo, que en el caso de que el afiliado tenga un solo codigo, no habria inconveniente, pero si es que tiene dos o mas , tendria que ser el primer valor ingresado de este afiliado. he aqui mi problema, pues no se como hacerlo.
Lo estuve pensando de la siguiente forma :
Código:
Pero no funciona.UPDATE afiliadoscontrol SET principal = 1 WHERE ( SELECT * FROM afiliadoscontrol INNER JOIN afiliados ON (afiliadoscontrol.afiliados_id = afiliados.id) ORDER BY afiliadoscontrol.id ASC LIMIT 1 )
alguna sugerencia?
Gracias por tu tiempo.