Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Summe aus einer Zeile

Begonnen von feliweb, November 26, 2014, 14:57:02

⏪ vorheriges - nächstes ⏩

feliweb

Hallo,

ich bin dabei eine Datenbank aufzubauen und hänge an einer Stelle:
ich habe mehrere Spalten mit UmsatzA, UmsatzB. und dahinter Gesamtumsatz.
ID       Umsatz A           Umsatz B            Umsatz C          Gesamt
5            20                     40                        80                   ??

Lässt sich dies dann irgendwie in der Gesamtspalte ausrechnen? Habe es schon mit mehreren Anleitungen für Abfragen etc probiert, allerdings suche ich wohl nicht unter dem richtigen Stichwort.

Grüße

Felix

DF6GL

Hallo,

Du befindest Dich schon am Anfang auf dem falschen Weg...

Das Stichwort  zur erfolgreichen DB heißt hier "Normalisierung" (s. u. st. Links 1 und 1a)

Zitat
"Lässt sich dies dann irgendwie in der Gesamtspalte ausrechnen?"

Ja, lässt sich. Im Fall von >=A2010-Format gibt es Tabellentrigger, die eine Berechung (Addition) über verschiedene Spalten (Felder) eines (!) Datensatzes ermöglichen.

Neben alledem ist es überflüssig und in den meisten Fällen falsch, berechnete Wert in einem Tabellefeld zu speichern.


feliweb

Ok. ersteinmal Danke für die schnelle Antwort.
Zitat von: DF6GL am November 26, 2014, 15:03:14

Neben alledem ist es überflüssig und in den meisten Fällen falsch, berechnete Wert in einem Tabellefeld zu speichern.



Das macht eigentlich Sinn. Das Ergebnis soll ja auch eigentlich nur angezeigt werden, macht das mehr Sinn? Und wie würde ich da vorgehen?

DF6GL

Hallo,

indem Du mit einem Formular in einem Textfeld das Ergebnis anzeigst. Die Berechnung hierfür steht dann in der Eigenschaft "Steuerelementinhalt" des Textfeldes:

=Feld1 + Feld2 + Feld3

und falls "leere" Felder vorkommen können:
=nz(Feld1;0) + nz(Feld2;0) + nz(Feld3;0)

MzKlMu

Hallo,
ich wollte noch mal etwas deutlicher auf das falsche Datenmodell hinweisen, gerade weil die DB im Aufbau ist.
Die Umsätze müssen in eine eigene Tabelle je Umsatz ein Datensatz, mit einem Kennzeichen für die Umsatzart (A, B, C).
Die Summe der Umsätze erhält man dann über eine gruppierte Abfrage.
Gruß Klaus

feliweb

Vielen Dank. Das habe ich auch schon befürchtet. Wie sieht denn in dem Fall eine solche gruppierte Abfrage für Zeilen aus? Ist eine gruppierte Abfrage denn nicht so, dass ich die Umsätze von Gesamt A, Gesamt B etc bekomme? Ich bräuchte ja die Summe von ID X Umsatz A+Umsatz B.

MaggieMay

Hallo,
ZitatIch bräuchte ja die Summe von ID X Umsatz A+Umsatz B
Das könnte dann folgendermaßen aussehen:Select ID, Sum(a) As SummeA, Sum(B) As SummeB, SummeA + SummeB As SummeGesamt
From tabelle Where ID = [welche ID]
Group By ID
Freundliche Grüße
MaggieMay

MzKlMu

Hallo,
wenn nur der Umsatz je ID benötigt wird (wie in #1 beschrieben) reicht doch diese einfache Abfrage:
ZitatSELECT ID, Sum(Umsatz) AS SummevonUmsatz
FROM Umsätze
GROUP BY ID
Umbau der Tabelle (gem. Vorschlag) vorausgesetzt.
Gruß Klaus

feliweb

Alles klar. Vielen lieben Dank an alle!!! Ich werde das ganze wohl noch einmal umbauen.