У меня есть две таблицы.
Table_A (nid, vid, тип, заголовок, uid)
Table_B (идентификатор, questiontext)
Я должен вставить записи от Table_B в Table_A. Я попробовал это:
INSERT INTO Table_A (nid, vid, type, title, uid)
VALUES ('', '', multichoice', (SELECT questiontext from Table_B), '1')
но это бросает ошибку.
Каков должен быть корректный оператор?
UPD: Я должен добавить, что nid является автоинкрементом, и значение vid должно быть тем же как nid.
Согласно справочнику MySQL для INSERT SELECT :
INSERT INTO table_name SELECT FROM other_table [ WHERE ... something ... ]
Вы пробовали
INSERT INTO Table_A (nid, vid, type, title, uid)
SELECT '',
'',
'multichoice',
questiontext ,
'1'
from Table_B
Взгляните на INSERT ... SELECT Syntax
Вы должны использовать следующий запрос SQL:
INSERT INTO Target(A, B, C)
SELECT A, B, C
FROM Source
используйте этот метод
INSERT INTO destination (имена колонок ) (select columnaes from example 3 );
Колонки должны быть одного типа .