UPDATE

dwache

Benutzer
Beiträge
5
Hallo ich versuche ein UPDATE der DB Strom Spalte Verbrauch_2023 mit der Summe Verbrauch 2023 aus der Diff zaehler_alt und zaehler_neu komme aber nicht recht weiter
=
UPDATE Strom SET verbrauch_2023 = SUM ( zaehler_alt - Zaehler_neu) WHERE Datum BETWEEN '2023-01-01' AND '2023-12-31';

Wie komme ich weiter ?
 
Werbung:
Du würdest sowas nicht machen. Es wiederspricht den normalisierungsregeln.
Was Du updaten willst, kannst Du jederzeit/ bei Bedarf abfragen und hast eine korrekte Angabe.
In Deinem Fall hast Du eine funktionale Abhängigkeit zwischen den gespeicherten Werten und der Summe. Die Summe ist demnach ab der Aktualisierung veraltet.
Du könntest entgegnen, dass Du jedesmal bevor Du abfragst, ein Update machst. Dann kannst Du allerdings genauso bzw. viel besser nur diesen berechneten Wert abfragen ohne irgendetwas zu updaten.

Dem SQL kann man entnehmen, dass es offenbar um eine Hausautomatisierung geht und man könnte folgern, dass die genutzte DB nicht die leistungsfähigste ist. Mangelnde Leistung wäre m.E. am ehesten ein Argument pro Denormalisierung. Allerdings sollte man sich schon gedanken machen, wie ein ordentliches Datenmodell aussieht und warum man es an welcher Stelle verletzt. (Die Spalte verbrauch 2023 klingt ebenfalls nach einer schlechten Idee.)

Zeig doch mal Deine Tabelle und beschreibe, warum Du das so machen willst.
 
Werbung:
Zurück
Oben