Mysql - Создать новую строку в таблице для каждого отдельного значения в столбце в той же таблице - PullRequest
1 голос
/ 12 марта 2020

Я искал, но не совсем нашел то, что ищу. Мне нужно создать новую запись в таблице для каждой существующей записи с уникальным идентификатором. Например, моя таблица выглядит следующим образом.

 id   userid    action
 ---  --------  ----------
 1    55        Red
 2    55        Blue
 3    56        Red
 4    56        Blue  

Для каждого уникального идентификатора пользователя необходимо добавить еще одну запись - например,

     id   userid    action
     ---  --------  ----------
     1    55        Red
     2    55        Blue
     3    56        Red
     4    56        Blue 
     5    55        Green
     6    56        Green

Возможно ли это?

1 Ответ

2 голосов
/ 12 марта 2020

Вы можете использовать синтаксис insert ... select для создания новой записи для каждого отдельного userid:

insert into mytable(userid, action)
select distinct userid, 'Green' from mytable
...