Предположим, у меня есть две таблицы recipient
и list
.
recipient
имеет столбцы id
, email
и customer
.
list
имеет столбцы id
, name
и customer
.
Обе таблицы связаны через recipient_list
со столбцами recipient_id
и list_id
.
И в recipient
, и в list
у меня есть данные для customer
«Демо-клиента» с соответствующими записями в объединительной таблице.
Сейчас я пытаюсь скопировать эти записи , включая отношения с другим клиентом. Я знаю, что могу вставить данные с помощью выбора, используя следующую схему:
INSERT INTO table_name(column_list)
SELECT
select_list
FROM
another_table;
С этим я могу скопировать записи recipient
и list
. Однако это не помогает мне с дублированием n-м отношений. Как мне этого добиться?
Edit:
Вот краткий пример того, чего я хотел бы достичь:
До:
recipient
+----+------------------+---------------+
| id | email | customer |
+----+------------------+---------------+
| 1 | test@example.org | Demo Customer |
+----+------------------+---------------+
list
+----+-----------+---------------+
| id | name | customer |
+----+-----------+---------------+
| 1 | demo list | Demo Customer |
+----+-----------+---------------+
recipient_list
+--------------+---------+
| recipient_id | list_id |
+--------------+---------+
| 1 | 1 |
+--------------+---------+
После того, как:
recipient
+----+------------------+---------------+
| id | email | customer |
+----+------------------+---------------+
| 1 | test@example.org | Demo Customer |
| 2 | test@example.org | Real Customer |
+----+------------------+---------------+
list
+----+-----------+---------------+
| id | name | customer |
+----+-----------+---------------+
| 1 | demo list | Demo Customer |
| 2 | demo list | Real Customer |
+----+-----------+---------------+
recipient_list
+--------------+---------+
| recipient_id | list_id |
+--------------+---------+
| 1 | 1 |
| 2 | 2 |
+--------------+---------+
Обратите внимание, что первичные ключи не обязательно так хороши, как в примере.