¿Cómo puedo seleccionar 2 tablas sin sobrescribir entre sí?

Actualmente tengo 2 tablas en mi base de datos con las mismas columnas. Los datos en el interior son diferentes, pero necesito combinarlos en 1 tabla con una consulta.

Intenté con uniones pero de alguna manera entiendo que sobrescribe el otro.

preguntado el 08 de noviembre de 11 a las 13:11

¿Dónde necesitas los datos resultantes? ¿Mover todos los datos de uno a otro o todos los datos en una tercera tabla? -

6 Respuestas

SELECT * FROM table1 UNION SELECT * FROM table2

ver http://dev.mysql.com/doc/refman/5.0/en/union.html

respondido 08 nov., 11:17

Si desea obtener los datos de ambas tablas como si estuvieran en una, intente usar UNION:
SELECT * FROM tab1
UNION
SELECT * FROM tab2

Nota: Solo funciona si ambas tablas tienen exactamente las mismas columnas. De lo contrario, debe refinar los SELECT para que coincidan con las columnas

respondido 08 nov., 11:17

No quieres unirte ... quieres hacer UNION

Digamos que creó su primera tabla así:

CREATE TABLE customer  
(First_Name char(50),
Last_Name char(50),
Address char(50));

Y su segunda tabla (con los mismos campos) así:

CREATE TABLE customer2
(First_Name char(50),
Last_Name char(50),
Address char(50));

Quieres una declaración UNION como esta:

SELECT * from customer
UNION
SELECT * from customer2;

Por supuesto, puede seleccionar campos específicos en lugar de SELECCIONAR * si solo lo desea.

respondido 08 nov., 11:17

Necesita agregar un alias para la columna "duplicada" cuando usa unirse. Algo como

a.mycolumn as column, b.mycolumn as column2

respondido 08 nov., 11:17

Comprobar el "SQL AS". Buena suerte

respondido 08 nov., 11:17

Con esta solución, las tablas no necesitan ser idénticas.

SELECT a.id AS id1, b.id AS id2 FROM table_1 a INNER JOIN table_2 b

respondido 08 nov., 11:17

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.