Несколько операторов INSERT INTO в одном запросе - PullRequest
0 голосов
/ 05 июля 2018

У меня есть две таблицы: BT и ST. Вот что я надеюсь сделать:

INSERT INTO BT (c1,c2,c3) values (v1,v2,v3)

ST - таблица с 89 строками и одним столбцом. Можно и если да, то как мне сформулировать запрос, чтобы вставка работала для каждого из 89 значений из таблицы ST?

(Имейте в виду: значения случайны и не содержат математической связи, с помощью которой я мог бы их связать)

c1-c3 = столбец1, столбец2, столбец3

v1-v3 = значение1, значение2, значение3 (v2 и v3 предопределены и установлены и не требуют изменения)

Я попробовал более очевидные вещи без успеха, такие как:

INSERT INTO BT (c1,c2,c3) values ((select c1 from ST),v2,v3)

Но все, что делает эта строка, возвращает общую синтаксическую ошибку sql.

Я признаю, что это может быть выполнено с 89 строками INSERT INTO, и я меняю это значение каждый раз, но можно ли это сделать более элегантным способом?

Я использую MySQL

1 Ответ

0 голосов
/ 05 июля 2018

Вы просто хотите insert . . . select:

insert into BT (c1, c2, c3) 
   select c1, v2, v3
   from ST
...