Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Aktualisieren Sie die Anweisung mit der with-Klausel

Wenn jemand nach mir hierher kommt, ist dies die Antwort, die für mich funktioniert hat.

HINWEIS:Bitte lesen Sie die Kommentare, bevor Sie dies verwenden, dies ist nicht vollständig. Der beste Rat für Update-Anfragen, den ich geben kann, ist, auf SqlServer umzusteigen;)

update mytable t
set z = (
  with comp as (
    select b.*, 42 as computed 
    from mytable t 
    where bs_id = 1
  )
  select c.computed
  from  comp c
  where c.id = t.id
)

Viel Glück,

GJ