从一个表中选择并插入另一个表

nrk*_*nrk 24 mysql sql

我有两张桌子.

Table_A(nid,vid,类型,标题,uid)

表_(id,questiontext)

我需要将Table_B中的记录插入Table_A.我试过这个:

INSERT INTO Table_A (nid, vid, type, title, uid)
VALUES ('', '', multichoice', (SELECT questiontext from Table_B), '1')
Run Code Online (Sandbox Code Playgroud)

但这是一个错误.

什么应该是正确的声明?

UPD:我应该补充一点,nid是自动增量,vid的值应该与nid相同.

Adr*_*der 52

你有没有尝试过

INSERT INTO Table_A (nid, vid, type, title, uid) 
SELECT  '', 
        '', 
        'multichoice', 
        questiontext ,
        '1'
from    Table_B
Run Code Online (Sandbox Code Playgroud)

看看INSERT ... SELECT语法


Mat*_*eid 10

您应该使用以下SQL查询:

INSERT INTO Target(A, B, C)
  SELECT A, B, C
    FROM Source
Run Code Online (Sandbox Code Playgroud)


Dan*_*eam 8

根据INSERT SELECT的MySQL 参考:

INSERT INTO table_name SELECT FROM other_table [ WHERE ... something ... ]
Run Code Online (Sandbox Code Playgroud)