Вставить в запрос не работает в MySQL - PullRequest
0 голосов
/ 04 мая 2018

Мне нужно выполнить такой запрос.

INSERT INTO `book_newBookOrder` (id, volume, 5, chapterNr, sectionNr, `text`) 
SELECT id, volume, bookNr, chapterNr, sectionNr, `text`
FROM book_oldBookOrder 
WHERE booknr = 1;

Фиксированное значение 5 в части INSERT INTO нарушает его. Я должен быть в состоянии указать два значения, как указано выше.

Итак, я хочу выбрать все с bookNr = 1 в таблице oldbooknr и сохранить его как booknr 5 в таблице newbookorder.

Пожалуйста, посоветуйте мне. Благодарю.

1 Ответ

0 голосов
/ 04 мая 2018

У вас есть синтаксическая ошибка: элементы в первом наборе скобок в INSERT должны быть именами полей. «5» - это не имя поля, это значение, которое вы хотите вставить (я предполагаю, что вы хотите установить это значение одинаково в каждой строке, которая вставляется?). Это должно быть в SELECT:

INSERT INTO `book_newBookOrder` (id, volume, bookNr, chapterNr, sectionNr, `text`) 
SELECT id, volume, 5, chapterNr, sectionNr, `text`
FROM book_oldBookOrder 
WHERE booknr = 1;
...