Copiar datos de una tabla a otra en MySQL

MySQL

Image via Wikipedia

Este post va dirigido para cuando utilizamos MySQL en Linux o Windows y tenemos la necesidad de migrar ciertos datos de una tabla a otra es decir ciertos campos en la misma base de datos.

Como sabemos MySQL es un motor de base de datos con licencia open source.

Aquí les pongo como hacerlo:

La estructura de la <mitabla> es:

campo1 int(2), campo2 varchar (25), campo3 varchar (10)

Y la estructura de <mitabla1> es:

campo1 int(2), campo2 int (2), campo3 varchar (25)

INSERT INTO <mitabla> (campo1, campo2) SELECT campo1, campo3 FROM <mitabla1>

Espero les sirva de mucho.

Saludos

Zemanta Pixie

13 comentarios en “Copiar datos de una tabla a otra en MySQL

  1. Buenas!
    Tengo una duda del MySql haver si me la puedes resolver.
    Quiero añadir en un campo tipo texto un script de manera que la sql seria así:
    INSERT INTO «nombre_tabla» («nombre_campo»)
    values («»);
    pero me da un error de sintaxis, supongo que por los parentesis, comillas, etc que hay dentro.
    Hay alguna manera de colocar el script sin que me de errores? cambio el tipo de campo o el cotejamineto?

  2. Creo que deberías escapar a los caracteres especiales es decir
    \( o \» dependiendo la necesidad .. pruebale con eso.

    INSERT INTO «nombre_tabla» \(«nombre_campo»\) values \(«»\);

    Saludos.

  3. Hola, Muchas Grax por el dato, solo me gustaria preguntarte si esta logica aplica para cuando mezclamos en un varchar digitos y letras. Por ejemplo:
    Si tabla1.Clave=»012jh4″-varchar- para hacer q copie y deje solo Tabla2.Clave=»12jh4″-varchar-, es decir que omita copiar un digito de mis registros el cual coincide en todos mis registro «0123», «0435», «0ref» ya sean solo enteros o solo varchar dicho campo en ambas tablas, o que reemplace sin necesidad de crear una tabla nueva(Tabla2) para vaciar los datos, o trabaje en esa misma los cambios (Tabla1)..Gracias 🙂

  4. Hola Maggie:

    En ese caso lo que podrias hacer es utilizar la funcion subtring en la subconsulta mas o menos si no me equivoco seria asi:

    INSERT INTO (campo1, campo2) SELECT substring(campo1,2,5), campo3 FROM

    Por ahi va lo que tu quieres hacer.

    Saludos y espero te sirva.

Deja un comentario

Este sitio utiliza Akismet para reducir el spam. Conoce cómo se procesan los datos de tus comentarios.