UPDATE bar b
SET foo_id = fb.foo_id
FROM foo_bar fb
WHERE fb.bar_id = b.bar_id;
Hvis du skal have flere rækker for én bar
(hvilket du ikke burde ifølge din beskrivelse) den ene række vil blive opdateret flere gange, og resultatet er vilkårligt.
Denne form for forespørgslen fungerer generelt bedre end en korreleret underforespørgsel.
Bemærk, at den primære nøgle til bar
skal virkelig hedde bar_id
- Jeg bruger det navn i forespørgslen.