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

[SOLUCIONADO] Actualizar datos de una columna con datos de otra columna de otra tabla

Estas en el tema de Actualizar datos de una columna con datos de otra columna de otra tabla en el foro de Mysql en Foros del Web. Hola, Tengo una antigua base de datos de WP con las siguientes tablas y campos (todos los campos son números enteros): wp_posts · ID · ...
  #1 (permalink)  
Antiguo 02/08/2013, 14:06
 
Fecha de Ingreso: junio-2008
Mensajes: 8
Antigüedad: 15 años, 10 meses
Puntos: 0
Actualizar datos de una columna con datos de otra columna de otra tabla

Hola,

Tengo una antigua base de datos de WP con las siguientes tablas y campos (todos los campos son números enteros):

wp_posts
· ID
· post_category

wp_term_relationships
· object_id
· term_taxonomy_id

ID y object_ID son el número identificador de cada entrada de WP (primera entrada = 1, segunda entrada = 2, etc.)

Todos los post_category tienen el valor 0.

Cada term_taxonomy_id tiene el valor correspondiente a la categoría a la que pertenece cada entrada.

Lo que me gustaría es que cada campo post_category adquiriera el mismo valor que tiene el campo term_taxonomy_id tomando como referencia la coincidencia entre ID y object_id.

Es decir, que el campo post_category de la fila en que ID = 1 adquiriera el valor que tiene el campo term_taxonomy_id de la fila en que object_id = 1, que el campo post_category de la fila en que ID = 2 adquiriera el valor que tiene el campo term_taxonomy_id de la fila en que object_id = 2, etc.

¿Alguien podría indicarme cómo podría conseguir esto o dónde hay alguna guía apta para ignorantes que pueda tomar como referencia? (después de leer muchos hilos y varias páginas del manual de MySQL me ha parecido que podría conseguirse con algún UPDATE, pero sólo he sido capaz de lograr respuestas de error -ignorancia MySQL cuasiabsoluta-).

Gracias por la atención y, en su caso, ayuda.

Saludos,

Manuel

Última edición por aprendiz69; 02/08/2013 a las 14:16
  #2 (permalink)  
Antiguo 02/08/2013, 14:17
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Actualizar datos de una columna con datos de otra columna de otra tabla

Hola aprendiz69:

Del manual de referencias:

http://dev.mysql.com/doc/refman/5.0/es/update.html

Cita:
Puede realizar operaciones UPDATE que cubran varias tablas. La parte table_references lista las tablas involucradas en el join. Su sintaxis se describe ámpliamente en Sección 13.2.7.1, “Sintaxis de JOIN”. Aquí hay un ejemplo:

UPDATE items,month SET items.price=month.price
WHERE items.id=month.id;
Este ejemplo muestra un inner join usando el operador coma, pero los comandos UPDATE de múltiples tablas pueden usar cualquier tipo de join permitido en comandos SELECT tales como LEFT JOIN.
Esto es exactamente lo que necesitas... haz la prueba utilizando JOIN's... o tal como está el ejemplo utilizando comas, es exactamente lo mismo. Si tienes problemas postea lo que intentaste hacer y con gusto te ayudamos corregir la sentencia.

Saludos
Leo.
  #3 (permalink)  
Antiguo 03/08/2013, 12:00
 
Fecha de Ingreso: junio-2008
Mensajes: 8
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Actualizar datos de una columna con datos de otra columna de otra tabla

Gracias, Leo,

El siguiente comando me ha servido:
Código SQL:
Ver original
  1. UPDATE wp_posts, wp_term_relationships
  2. SET wp_posts.post_category=wp_term_relationships.term_taxonomy_id
  3. WHERE wp_posts.ID = wp_term_relationships.object_id;



Saludos,

Manuel

Última edición por gnzsoloyo; 03/08/2013 a las 12:14

Etiquetas: campo, columna, 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 06:19.