SQL обновить несколько значений во вновь добавленном столбце? - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть эта база данных в MySQl с именем friends, и, скажем, у меня есть три строки в таблице Friends.

ID   Name  Age  Email(newly added column)
1    Jane  22
2   Melissa 23
3   Andrew  23  

Теперь я хочу добавить электронные письма каждому человеку в базе данных, используя приведенный ниже синтаксис SQL, но он не работает. Где я ошибся?

Update friends
set email= 'jane@abc.com' where id = 1,
set email= 'Melissa@abc.com' where id = 2,
set email= 'Andrew@abc.com' where id = 3;

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

Ваши утверждения верны.Просто удалите запятые и запустите эти операторы отдельно.

Update friends set email= 'jane@abc.com' where id = 1;
Update friends set email= 'Melissa@abc.com' where id = 2;
Update friends set email= 'Andrew@abc.com' where id = 3;
0 голосов
/ 16 ноября 2018

Вам нужно сделать 3 разных запроса, например:

Update friends set email= 'jane@abc.com' where id = 1;
Update friends set email= 'Melissa@abc.com' where id = 2;
Update friends set email= 'Andrew@abc.com' where id = 3;

ИЛИ использовать случай, когда выражение:

Update friends set email= (case when id=1 then 'jane@abc.com'
                                when id=2 then 'melissa@abc.com'
                                when id=3 then 'andrew@abc.com' end)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...