Oracle - Update con where x = select()

 
Vista:

Update con where x = select()

Publicado por Patricio (2 intervenciones) el 27/02/2003 21:19:49
trataré de explicar de acuerdo amis limitantes Mi problema es el siguiente:
tengo 2 tablas t1 y t2 ambas con la misma estructura que es de dos campos
campo 1 varchar2, campo2 numerico con los siguientes valores

t1 t1
Nom Val Nom Val
a 7 b 5
a 1

lo que quiero es actualizar la tabla t1 pero que me deje el valor que esta en la tabla t2 donde t1.nom = t2.nom

update t1 set t1.val = t2.val where t1.nom = t2.nom;

No lo quiero hacer como um procedimiento almacenado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Update con where x = select()

Publicado por PLANEA (50 intervenciones) el 27/02/2003 21:39:50

update t1
set t1.val = (
select t2.val
from t2
where t2.nom = t1.nom)

Donde el subsquery que obtiene el valor a asignar a t1.val debera regresar 1 registro ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Update con where x = select()

Publicado por Patricio (2 intervenciones) el 27/02/2003 21:59:13
Muchas gracias, solo te falto una condicion para que no me remplace los que no estan por un null.

pero muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar