Oracle
 sql >> Base de données >  >> RDS >> Oracle

Instruction de mise à jour à l'aide de la clause with

Si quelqu'un vient ici après moi, c'est la réponse qui a fonctionné pour moi.

REMARQUE :veuillez lire les commentaires avant de l'utiliser, ce n'est pas complet. Le meilleur conseil que je puisse donner pour les requêtes de mise à jour est de passer à SqlServer ;)

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
)

Bonne chance,

GJ