update ergebnis aus subselect

Hallo zusammen ich komme mal wieder nicht weiter
habe ein Subselect das mir 500 Zeilen mit dem gesuchten Wert “378” auflistet
nun möchte ich diese 500 Einträge mit dem neuen Wert “100” updaten
bekomme aber je nach Versuch unterschiedliche Fehlermeldungen
kann mir da jemand weiterheilfen?


update Tabelle_aaa
set Tabelle_aaa.id_dis = 100

???

(select Tabelle_aaa.id_dis
from Tabelle_aaa
where Tabelle_aaa.id_tr in
(select Tabelle_bbb.id_ses
from
Tabelle_bbb,
Tabelle_aaa
where Tabelle_bbb.id_ses = Tabelle_aaa.id_tr
and Tabelle_aaa.id_dis =378))

Ich weiß nicht wie es den anderen geht, aber ich finde Beispiele mit Namen wie “aaa” und “bbb” extrem schwer zu verstehen.
Auf den ersten Blick scheinen die Werte ja alle aus der aaa Tabelle zu kommen, könntest Du da nicht einfach:

update Tabelle_aaa
  set id_dis = 100
where aaa.id_dis = 378

verwenden?
Oder willst Du nur die ändern die auch in der bbb Tabelle vorhanden sind?
Dann vielleicht ein:

update Tabelle_aaa
  set id_dis = 100
where exists (select * 
              from tabelle_bbb 
              where tabelle_bbb.id_ses = tabelle_aaa.id_tr)
and id_dis = 378

funktioniert leider nicht

ERROR: FEHLER: Spalte »tabelle_aaa« von Relation »tabelle_aaa« existiert nicht
LINE 2: set tabelle_aaa.id_dis = 100

Sorry, ich habe Deinen Code kopiert ohne Nachzudenken.

“set Tabelle_aaa.id_dis = …” muss natürlich “set id_dis = …” sein.

hat Funktioniert, danke

auf die “where exists( select” Variante wäre ich nicht gekommen