AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi mysql rechnet falsch
Thema durchsuchen
Ansicht
Themen-Optionen

mysql rechnet falsch

Ein Thema von Mario61 · begonnen am 11. Feb 2020 · letzter Beitrag vom 11. Feb 2020
Antwort Antwort
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#1

AW: mysql rechnet falsch

  Alt 11. Feb 2020, 13:29
Ein erster Debug-Schritt: Summe von nur einem Element bilden. Kommt dann das Richtige raus? Mein erster Gedanke ist nämlich ein Konvertierungsproblem ("3,52" als input, "16.0" als output, man achte auf "," vs "."=

Ein anderer Anhaltspunkt: Lässt man alle Nachkommastellen weg, (also "0,99" wird "0"), kommt als Summe 16 raus.
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: mysql rechnet falsch

  Alt 11. Feb 2020, 13:35
Hallo,
hier sind ein paar Tipps

https://stackoverflow.com/questions/...ecimal-numbers

gerade das hier
SELECT ROUND(SUM(cash), 2)

Und das hier
https://stackoverflow.com/questions/...decimal-values

Ich hätte ja auch noch
Select Sum(Betrag*100)


Der richtige Datentyp ist übrigens Integer mit EuroCent als Werte.
einige würden sogar 10er Eurocents speichern,
also aus 2,50 Euro würden entweder 250 Cent oder 2500 10er Cents.
Heiko

Geändert von hoika (11. Feb 2020 um 13:38 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.879 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: mysql rechnet falsch

  Alt 11. Feb 2020, 13:38
SELECT SUM(Cast (Betrag as Float)) as summe FROM Daten;
Markus Kinzler
  Mit Zitat antworten Zitat
Mario61

Registriert seit: 10. Jan 2010
19 Beiträge
 
#4

AW: mysql rechnet falsch

  Alt 11. Feb 2020, 14:04
Oh man ey... ich habe aus dem Komma mal ein Punkt gemacht, sowie Datenbankfeld auf Integer geändert. Abfrage gestartet und 1.279999999 als ergebniss. Abfrage geändert:
SELECT ROUND(SUM(Betrag),2) as summe FROM Daten;
und das Ergebniss hat mit der Excel-Tabelle überein gestimmt. Also das blöde Komma... Ich habe schon fast aufgegeben.

ALLEN VIELEN DANK: (Hier bleib ich )
Gruß Mario
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: mysql rechnet falsch

  Alt 11. Feb 2020, 16:01
Hallo,
Zitat:
Datenbankfeld auf Integer
Das hätte aber klappen müssen.
Natürlich müssen die Daten dann Cent sein.
Heiko
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz