MySQL - Wert subtrahieren aus der Summer von 2 Feldern

proloser

Erfahrenes Mitglied
Hallo,
der Titel sagt eigentlich schon ziehmlich viel. Die Datenbak sieht wie folgt aus:

id | zahl1| zahl2
1 | 10 | 20


Mir ist klar wie ich die Zwei werte zusammen ausgeben kann:
SQL:
SELECT 
  zahl1 + zahl2 AS summe

FROM 
  tabelle

Klar ist mir auch wie ich von einem Feld, einen bestimmten Wert abziehen kann:
SQL:
UPDATE 
  tabelle

SET 
  zahl1 = zahl1 - 24


Nun zu meinem Problem:

Ich möchte ein bestimmten Wert von der "summe" abziehen. Das bedeutet, wenn ich 24 abziehe, soll folgendes in der Datenbank passieren:

id | zahl1 | zahl2
1 | 0 | 6


Wenn ich 5 abziehe:

id | zahl1 | zahl2
1 | 5 | 20


Mir würde zwar über Umwegen eine Möglichkeit einfallen aber ich denke damit es dafür eine einfache Möglichkeit gibt.

Gruß proloser
 
Zuletzt bearbeitet von einem Moderator:
Die Datenbak sieht wie folgt aus:

id | zahl1| zahl2
1 | 10 | 20

[...]
Ich möchte ein bestimmten Wert von der "summe" abziehen. Das bedeutet, wenn ich 24 abziehe, soll folgendes in der Datenbank passieren:

id | zahl1 | zahl2
1 | 0 | 4
Und nach welcher Rechenvorschrift soll da jetzt 4 rauskommen? Meintest du vielleicht eher 6? Wenn ja, dann probier es mal so:

SQL:
UPDATE tabelle
SET zahl2 = IF(zahl1 - 24 < 0, zahl1 + zahl2 - 24, zahl2),
    zahl1 = IF(zahl1 - 24 < 0, 0, zahl1 - 24)

Grüße,
Matthias
 
Habs auch gerade gesehen und schon ausgebessert, natürlich mein ich 6. Sorry ...
Vielen Dank, werd ich gleich ausprobieren!

Gruß proloser
 
Zurück