Im 1. Subselect darf nur 1 Zeile als Ergebnis kommen, d.h., dass der Key nicht eindeutig ist !
Für diese Form des Updates benötigst du eine EINDEUTIGE Beziehung um genau EINEN Satz zu selektieren.
Falls das Feld Key1 nicht ausreicht mußt du halt mit "and" weitere Schlüssel auswählen.

Frage: Ist dein Beispiel das richtige ? Es scheint, dass du den Update auf sich selbst durchführst.