Hallo,
Ich versuche aus meiner MySQL-DB den höchsten Wert der letzten 24h herauszufinden. Dazu verwende ich folgende Abfrage:
$max1_sql="SELECT max(wert) as maxwert FROM `$tabelle` WHERE `datumzeit`>='$heute_start' AND `datumzeit`<='$heute_end'";
Als Antwort erhalte ich z.B. 25.299999237061, obwohl die Zahlen in der DB nur mit einer Dezimalstelle erfasst sind.
Was mache ich falsch?
Gruss
hightower
Welche Zahlenformate sind in welcher Spalte? Wie sind die Spalten formatiert? EIn paar mehr Infos müssen schon kommen
paresy
3
Du machst nichts falsch. Das liegt an daran, wie Fließkommawerte gespeichert werden. (Google: IEEE754)
Sobald du den Wert z.B. mit number_format auf eine Kommastelle rundest, sieht wieder alles richtig aus.
paresy
Danke! number_format scheint zu funktionieren - ich hoffe nur, dass ich nie einen Wert mit vielen Dezimalstellen habe.
Gruss
hightower