2009-03-10 18 views

Respuesta

18

(No es necesario para que coincida con los esquemas de tablas)

INSERT tbl_name (col1, col2) 
    SELECT value1, value2 
    FROM othertable 

Ver la referencia para INSERT ... SELECT Syntax

+0

INSERT INTO nombre_tabla (col1, col2) ... podría ser necesario. – Sam

5
insert into table_name ... 
select * from table_name where .... 

La tabla de destino y la consulta de origen deben coincidir en el número de columnas y tipos de datos

Ver este link

4

Puede incluso crear tablas de esta manera, aunque los nombres de columna deben coincidir, o los resultados seleccionados se ponen en las columnas añadidas automáticamente:

mysql> create table foo (id int primary key auto_increment, bar datetime) 
    -> select now() as bar, now() as baz from dual; 
Query OK, 1 row affected, 1 warning (0.06 sec) 
Records: 1 Duplicates: 0 Warnings: 0 

mysql> select * from foo; 
+----+---------------------+---------------------+ 
| id | bar     | baz     | 
+----+---------------------+---------------------+ 
| 1 | 2009-03-10 17:01:35 | 2009-03-10 17:01:35 | 
+----+---------------------+---------------------+ 
1 row in set (0.00 sec) 
Cuestiones relacionadas