-1
UPDATE calculation  
LEFT JOIN transportorders ON calculation.ataid = transportorders.nr
LEFT JOIN partner ON partner.taid = transportorders.nr 
      AND calculation.FZZAEHLER=ATAFRACHTZAHLER.FZZAEHLER
SET calculation.BABRECHNUNGSINFO = '.....' 
WHERE calculation.ataid IN
(SELECT transportorders.nr 
 FROM transportorders 
 WHERE transportorders.tournr = '212041') 
AND partner.kundenid = '2486909';

I am trying this code, but it gives me an error that SET keyword is not found. Which means the joins are not as they should be. How do I make this selection in UPDATE? Regular SELECT works fine with the same tables.

Tony Andrews
  • 129,880
  • 21
  • 220
  • 259
DarkBlade
  • 47
  • 6

1 Answers1

0

Try merge:

MERGE INTO calculation c
     USING (SELECT '....' new_value, t.nr
              FROM transportoders t LEFT JOIN partner p ON p.taid = t.nr
             WHERE     t.tournr = '212041'
                   AND p.kundenid = '2486909') x
        ON (c.ataid = x.nr)
WHEN MATCHED
THEN
   UPDATE SET c.babrechnungsinfo = x.new_value;
Littlefoot
  • 131,892
  • 15
  • 35
  • 57