#phpmyadmin #sql-insert
#phpmyadmin #sql-вставка
Вопрос:
У меня есть две таблицы в одной БД. Table1 была автоматически сгенерирована с помощью импорта csv, все имена столбцов похожи: COL 1, COL 2 и т.д. Table2 — это таблица, которую я создал. В обеих таблицах все поля имеют значение VARCHAR NULL, равное нулю, за исключением поля PK AI в Table2. Таблица 1 содержит 18 полей. Таблица 2 содержит 21 поле.
Я пытаюсь вставить первые 18 полей из table1 в table2. Мой код выглядит так.
INSERT INTO table2
(First, Last, Address...)
SELECT COL 1, COl 2, COl 3
FROM table1;
Это не работает. Я пробовал с обратными и одинарными кавычками и без них в обоих списках полей.
Сообщение об ошибке сообщает мне только о том, что ошибка находится в строке 3.
Чего мне не хватает?
Комментарии:
1. Кроме того, кстати, в table1 нет PK. и я не игнорирую поле PK AI в table2.
Ответ №1:
В вашем случае,
Имея table1
с Col 1, Col 2, Col 3…
и table2
с именованными полями First, Last, Address…
Вы должны следовать этому:
INSERT INTO table2
(First, Last, Address...)
SELECT `COL 1` as First, `COl 2` as Last, `COl 3` as Address
FROM table1;
Надеюсь, это помогло…