Ответ 1
Вы пробовали
INSERT INTO Table_A (nid, vid, type, title, uid)
SELECT '',
'',
'multichoice',
questiontext ,
'1'
from Table_B
Посмотрите INSERT... SELECT Синтаксис
У меня есть две таблицы.
Таблица_A (nid, vid, type, title, uid)
Таблица_B (id, 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.
Вы пробовали
INSERT INTO Table_A (nid, vid, type, title, uid)
SELECT '',
'',
'multichoice',
questiontext ,
'1'
from Table_B
Посмотрите INSERT... SELECT Синтаксис
Вы должны использовать следующий SQL-запрос:
INSERT INTO Target(A, B, C)
SELECT A, B, C
FROM Source
В соответствии с MySQL ссылка для INSERT SELECT:
INSERT INTO table_name SELECT FROM other_table [ WHERE ... something ... ]
используйте этот метод
INSERT INTO destination (имена столбцов) (выберите columnaes из примера 3);
Столбец должен быть здесь одного типа.
insert into table2(columnname)select columnname from table1
Я думаю, что правильный ответ на это может быть выбран, из того, что я вижу из других ответов, является то, что вы, ребята, вставляете, прежде чем получать значение из таблицы B, поскольку сначала вы должны получить значение: SELECT из таблицы B, затем вставьте в таблицу A. вы должны искать в строках выбора в