Was in Open Libre Office Datenbank berechnen

Heinzi79

Aktiver Benutzer
Beiträge
32
Hallo, ich würde was berechnen.

Platz, Markt, Straße, PLZ, Ort, Punkte und Summe Einkauf.

Wenn es geht gerne auch Platzierung.

Pl.
1. Netto, Straße, PLZ, Ort, 12 Punkte, Betrag 29,86€
2. Real, Straße, PLZ, Ort, 7 Punkte Betrag 13,20€
3. Netto. Straße, PLZ, Ort, 15 Punkte, Betrag 33,85€

Ich möchte gerne das das Punkte und Beträge zusammen rechnet.

Pl.
1. Netto, Straße, PLZ, Ort, Punkte 27 Punkte, 63,71€
2. Real, Straße, PLZ, Ort, Punkte 7, Betrag 13,20€

Ich würde freuen wenn mir jemand Helfen, kann.
 
Werbung:
DB2 oder LibreOffice? LibeOffice kann IMHO mehrere Backends. Tabellendesign?

aus dem Steggreif:

select markt, strasse, plz, ort, sum(punkte), sum(betrag) from tabelle group by markt, strasse, plz;
 
Wonach soll denn platziert werden? Punktesumme, Betragssumme, Verrechnung von beidem, ..?
Naheliegend ist einfach mal, die Ausgabereihenfolge nach diesen Werten zu sortieren:
Order By ..
 
Laut Doku gibt es "RANK", "DENSE RANK" und "ROW_NUMBER" in mehreren Schreibweisen (Seite 115). Irgendwas davon sollte gehen, RANK ist natürlich ideal weil theoretisch gleichplatzierte Einträge vorliegen können.

Die OVER-Clause scheint generell nicht unterstützt zu werden. Ich vermute einfach mal das HSQL das immer auf das ORDER BY bezieht aber die Doku ist nicht grade ausführlich. Du wirst das ausprobieren müssen.
Code:
select RANK, markt, strasse, plz, ort, sum(punkte), sum(betrag) from tabelle group by markt, strasse, plz;
 
LibreOffice bündelt immer noch HSQLDB 1.8 (!), ich glaube nicht, dass die Version Window-Funktionen unterstützt.

Wenn man keinen externen DB Server anbinden möchte, dann würde ich eher auf Firebird wechseln, welches man mittlerweile auch als embedded DB verwenden kann. Derzeit (7.5.x) wird Firebird 3.0 mitgeliefert, ist zwar auch schon etwas betagt, aber immer noch mächtiger ist als das völlig veraltete HSQLDB 1.8

Man muss aber die Verwendung von Firebird vorher freischalten, weil es immer noch als "experimentell" geführt wird (Extras -> Optionen -> LibreOffice -> Erweitert -> Experimentelle Funktionen aktivieren)
 
Werbung:
Zurück
Oben