Hallo!
diese Abweichungen entstehen vermutlich dadurch, dass die 6. Nachkommastelle nicht gerundet, sondern lediglich abgeschnitten wird. In Datenbanken gibt es dafür meist ein Format "Währungen", das dieses Problem vermeidet.
Nein, das Problem besteht schon in der Theorie. Die angegebenen Tabellen habe ich in Excel eingegeben und berechnet. Und es wurde auch nur mit den angezeigten Nachkommastellen gerechnet, also mit den gerundeten Werten (kann man bei Excel unter Extras -> Optionen -> Berechnungen einstellen). Habe das auch mit dem Taschenrechner überprüft.
Das Kernproblem ist ganz einfach:
Nehme einen Wert mit 10 Nachkommastellen, runde auf 5 Stellen. Dann multipliziere mit irgendeiner Zahl, und Du wirst ein anderes Ergebnis erhalten, als mit dem originalen Wert. Der "originale Wert" ist z.B. ein mit 5 Nachkommastellen eingegebener Preis, der mit einem Wechselkurs mit ebenfalls 5 Nachkommastellen umgerechnet wurde.
Das Problem ist wirklich etwas kompliziert, sorry, aber ich kann es leider nicht einfacher formulieren. Obwohl ich schon viel Zeit hiermit verbracht habe, fällt es mir nach einiger Zeit immer wieder schwer mich da hineinzudenken ;-)
Grüße
Andreas
PS: Leider muss ich Datenbank-Unabhängigkeit bewahren - soweit möglich. Daher verlagere ich einen Teil dieser Logik in die Anwendung, auch wenn das nicht so effizient ist, leider geht es nicht anders.
SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/