1

私のデータベースには、複数の Id を持ついくつかの値と、それらを調整した Id があります。たとえば、次のようになります。

ID: 234 | Viaf_id: 3475903 | 名前: アルトゥーロ・ロッシ | 名: ロッシ | 姓名:アルトゥーロ

ID: 345 | Viaf_id: 3475903 | 名前: ロッシ、アルトゥーロ | 名: アルトゥーロ | 姓名:ロッシ

これらすべての値をviaf_id345 という名前の 3475903 に設定したいと思います。次のように「手動で」行います。

UPDATE viaf_reconcile 
SET id_creator="345", 
    Name="Rossi, Arturo",  
    FirstName="Arturo", 
    LastName="Rossi"  
WHERE `id_viaf` = '3475903'

しかし、これには多くの時間がかかります。特定の id_creator の値で「Name」、「FirstName」、「LastName」を設定する方法はありid_viafますか?

4

2 に答える 2

1

UPDATE 中に次のような方法で JOIN できます。

  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;
于 2016-12-27T12:47:11.690 に答える
0

「Name」、「FirstName」、「LastName」フィールドを指定しないと、mysql が古いものを設定するので、このクエリでうまくいくと思います。

UPDATE viaf_reconcile 
SET id_creator="345"  
WHERE `id_viaf` = '3475903'

:)

于 2016-12-27T10:27:51.660 に答える