2013-03-13 4 views
0

Я пытался понять это, но, похоже, не может найти простого решения.MySQL: объединение нескольких столбцов из таблицы 1 и вставка в 1 столбец в таблице 2

Скажем, например, у меня есть таблица со сходными данными по 3 столбцам (т. Е. Различные типы действий, охватывающие 3 столбца), но я хочу, чтобы эти три столбца были вставлены в отдельную таблицу (Таблица 2), поэтому я могу сохранить данных вместе и выполнить JOIN, чтобы сопоставить его с соответствующими данными в таблице 1.

Я не говорю о выполнении CONCAT или CONCAT_WS, но перемещая эти три столбца из таблицы 1 в один столбец в таблице2, каждый элемент имеет свою собственную строку.

Есть ли способ сделать это с помощью запроса без необходимости вручную вставлять каждую запись в таблицу2?

Спасибо заранее!

+0

Вы ищете триггер или пытаетесь вставить данные в две таблицы с одним запросом. Это возможно с помощью триггера, но оператор insert не может влиять на две таблицы одновременно. –

ответ

1

Это может быть столь же просто, как:

insert into table2 
(field) 
select column1 from table1 
union 
select column2 from table1 
union 
select column3 from table1 

Но, прежде чем это сделать, решить, что вы хотите делать, если две колонки в table1 имеют одинаковое значение.

Смежные вопросы