Thomas Meinike: Data Types von MySQL (float oder double)

Beitrag lesen

Hallo,

ich will Fliesskommazahlen abspeichern. (123456.1234)
ich brauch eine Genauigkeit von 6 Stellen vor und 4 stellen nach dem Komma.

Was würdet ihr nehmen? float oder double?
was ist der unterschied zwischen float und double?

Ist 6 Stellen vor, 4 Stellen nach dem Komma float (6,4) oder float (10,4)?

FLOAT (4 Bytes) speichert Werte mit einfacher Genauigkeit (8 Nachkommastellen) und DOUBLE (8 Bytes) mit doppelter Genauigkeit (16 Nachkommastellen).

Vielleicht nuetzt Dir auch DECIMAL etwas, in diesem Fall DECIMAL(6,4), wobei die Daten intern als Zeichenkette gespeichert werden.

U. a. Bei Geldbetraegen ist DECIMAL sinnvoll. Ansonsten kann Du auch FLOAT/DOUBLE nehmen und die Werte ggf. runden. Dafuer gibt es die Funktion ROUND(). ROUND(a) rundet a auf die naechste ganze Zahl und ROUND(a,4) rundet a auf 4 Stellen nach dem Komma.

MfG, Thomas