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

actualizar campo de una tabla con datos de otra tabla

Estas en el tema de actualizar campo de una tabla con datos de otra tabla en el foro de Mysql en Foros del Web. hola todos , pues ahora escribo para un problemita que tengo con una consulta en mysql, lo que quiero hacer es actualizar el campo de ...
  #1 (permalink)  
Antiguo 21/10/2010, 14:45
 
Fecha de Ingreso: marzo-2010
Ubicación: Cali
Mensajes: 203
Antigüedad: 14 años, 1 mes
Puntos: 5
Pregunta actualizar campo de una tabla con datos de otra tabla

hola todos , pues ahora escribo para un problemita que tengo con una consulta en mysql, lo que quiero hacer es actualizar el campo de una tabla con los datos que existen en otra con update pero pues mysql me da el siguiente error:

Subquery returns more than 1 row


y pues la consulta la tengo de la siguiente manera:

Código MySQL:
Ver original
  1. update archivo_historia a set a.proyecto = (select b.proyecto from bitacora b where b.radicado = a.radicado)

espero que me puedan ayudar con esto, de antemano muchas gracias por su tiempo y ayuda
  #2 (permalink)  
Antiguo 21/10/2010, 14:51
Avatar de blonder413  
Fecha de Ingreso: octubre-2010
Mensajes: 58
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: actualizar campo de una tabla con datos de otra tabla

yo trabaje esto con php, no se si te sirva. con esto modifico el campo nombre de la tabla entregasdiarias con el valor del campo nombre de la tabla empleado.

Código:
UPDATE entregasdiarias
SET
nombre = (
  SELECT nombre FROM empleado
  WHERE empleado.cedula=cedula
)
WHERE
cedula=ced
en donde "ced" es la cedula original y "cedula" es la nueva cedula(ya cambiada en la tabla empleado)
  #3 (permalink)  
Antiguo 21/10/2010, 15:21
 
Fecha de Ingreso: marzo-2010
Ubicación: Cali
Mensajes: 203
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: actualizar campo de una tabla con datos de otra tabla

hola blonder413 muchas gracias por tu pronta respuesta. Te comento intente con el codigo qe me mostraste pero nada aun me da el mismo error:

Subquery returns more than 1 row
  #4 (permalink)  
Antiguo 21/10/2010, 17:00
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: actualizar campo de una tabla con datos de otra tabla

Eso significa que este segmento:
Código MySQL:
Ver original
  1. SELECT b.proyecto FROM bitacora b WHERE b.radicado = a.radicado
te está devolviendo más de un registro y por tanto no puede realizar esa asignación (no puedes poner dos objetos donde va uno sólo).
El problema que tienes es que hay más de un registro de la tabla archivo_historia que se corresponde con uno de bitacora...
Es decir que entre ambas tablas hay una relación 1:N
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: tablas, campos
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 00:08.