Cómo combinar registros de tablas sin afectar existentes

  • Autor Autor sintesk7
  • Fecha de inicio Fecha de inicio
sintesk7

sintesk7

Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Hola, tengo que unir varias tablas dentro de una y me preguntaba si alguien sabe una sentencia para meter todos los registros de una tabla a otra, sin que se vean afectados los que ya están en ella.

Gracias, un saludo!
 
¡Hola! Depende del gestor que estés utilizando. Por lo que entiendo de tu publicación, podrías realizar un JOIN (para unir las otras tablas) y luego un insert en la nueva tabla, por ejemplo algo así:

Forma básica de realizar la inserción desde un select de una sola tabla:

INSERT INTO tabla2
SELECT * FROM tabla1
WHERE condicion;

Forma básica de realizar la inserción desde un select de varias tablas a través de un JOIN. Por supuesto, la síntaxis puede cambiar pero dependerá de tus necesidades.

INSERT INTO TABLA(TABLA.campo1, TABLA.campo2, TABLA.campo3)
SELECT TABLA1.columna, TABLA2.columna, TABLA3.campo
INNER JOIN TABLA1 ON TABLA1.clave = TABLA.clave ... ....
WHERE ... condicion ...

Para más información podrías visitar INSERT INTO SELECT

¡Un saludo!
 
¿No te sería más util crear una vista en lugar de insertar los datos en una sola tabla?

Porque, sin saber el porque lo necesitas así, parece que quieres romper la normalización de la base de datos.
 
Crea una vista con las consultas necesarias, puro JOIN.
 
Lo que quieres tienes que estudiarlo, porque si quieres unir varias tablas para que te resulte una finalmente, es posible que el campo 'id' (que sera autonumerico) te aparezca en más de una ocasión y crearas un conflicto en la tabla resultante. La solucion esta en renombrar los campos que coincidan en su nombre.
 
Atrás
Arriba