Mysql: установить некоторое значение из элемента
У меня есть БД У меня есть несколько значений с несколькими Id и Id, с которыми я их согласовал, например:
Id: 234 | Viaf_id: 3475903 | Имя: Артуро Росси | Имя: Росси | Фамилия: Артуро
Id: 345 | Viaf_id: 3475903 | Имя: Росси, Артуро | Имя: Артуро | Фамилия: Росси
Я хотел бы установить все эти значения с viaf_id
3475903 с именем 345. Теперь я делаю это "вручную" с помощью:
UPDATE viaf_reconcile
SET id_creator="345",
Name="Rossi, Arturo",
FirstName="Arturo",
LastName="Rossi"
WHERE `id_viaf` = '3475903'
Но это занимает у меня много раз, есть ли способ установить значения "Имя", "Имя" и "Фамилия" со значениями конкретного id_creator, где есть определенный id_viaf
?
2 ответа
Вы можете присоединиться во время обновления, выполнив что-то вроде:
UPDATE viaf_reconcile to
JOIN viaf_reconcile from
ON from.id_viaf = to.id_viaf
AND to.id_viaf = '3475903'
SET to.Name = from.Name;
Я думаю, что если вы не укажете поля "Name", "FirstName", "LastName", mysql установит старые, поэтому, я думаю, этот запрос сделает работу:
UPDATE viaf_reconcile
SET id_creator="345"
WHERE `id_viaf` = '3475903'
:)