Pregunta seleccionar de una tabla e insertar en otra


Tengo dos tablas.

Table_A (nid, vid, tipo, título, uid)

Table_B (id, questiontext)

Necesito insertar registros de la Tabla_B en la Tabla_A. Intenté esto:

INSERT INTO Table_A (nid, vid, type, title, uid)
VALUES ('', '', multichoice', (SELECT questiontext from Table_B), '1')

pero está arrojando un error.

¿Cuál debería ser la declaración correcta?

UPD: Debo añadir que nid es autoincrement y que el valor de vid debe ser el mismo que nid.


24
2018-03-04 07:36


origen


Respuestas:


Has probado

INSERT INTO Table_A (nid, vid, type, title, uid) 
SELECT  '', 
        '', 
        'multichoice', 
        questiontext ,
        '1'
from    Table_B

Mira esto INSERTAR ... SELECCIONAR Sintaxis


48
2018-03-04 07:38



Debería usar la siguiente consulta SQL:

INSERT INTO Target(A, B, C)
  SELECT A, B, C
    FROM Source

8
2018-03-04 07:39



De acuerdo con el MySQL referencia para INSERT SELECT:

INSERT INTO table_name SELECT FROM other_table [ WHERE ... something ... ]

3
2018-03-04 07:40



usa este método

INSERT INTO destination (nombres de columna) (seleccione las columnas del ejemplo 3);

La columna debe ser del mismo tipo aquí.


0
2018-03-04 07:44



insert into table2(columnname)select columnname from table1

0
2018-01-13 04:15



Creo que la respuesta correcta podría seleccionarse, por lo que veo de las otras respuestas es que ustedes insertan antes de obtener el valor de la tabla B, ya que primero deben obtener el valor que es: SELECCIONAR de la tabla B y luego insertar en la tabla A. deberías estar buscando en las líneas de seleccionar en


-1
2018-01-17 21:46



Preguntas populares