Hi,
ich bin gerade nach längerem Suchen warum meine Funktion immer falsche Ergebnisse liefert über ein Problem bei einem Query mit Fließkommazahlen gestoßen.
Und zwar habe ich folgende Datenbank:
https://www.sendspace.com/file/i65iem
Die Spalte rating ist dabei vom Datentyp float.
Folgende Abfrage liefert den Wert 0:
Und folgende Abfrage liefert den richtigen Wert:
Scheinbar speichert MySql die Daten nicht ganz so genau.
Nur kann ich im PHP Skript nicht standardmäßig 0,1 draufaddieren und daraus die Abfrage machen, da die ratings auch 0.02 sein könnten.
Welche Möglichkeit gibt es noch ohne die Struktur der DB zu ändern, die dieses Problem lösen würde?
ich bin gerade nach längerem Suchen warum meine Funktion immer falsche Ergebnisse liefert über ein Problem bei einem Query mit Fließkommazahlen gestoßen.
Und zwar habe ich folgende Datenbank:
https://www.sendspace.com/file/i65iem
Die Spalte rating ist dabei vom Datentyp float.
Folgende Abfrage liefert den Wert 0:
Code:
SELECT COUNT(*) FROM `vogoo_ratings` WHERE `rating`=0.2
Und folgende Abfrage liefert den richtigen Wert:
Code:
SELECT COUNT(*) FROM `vogoo_ratings` WHERE `rating`>=0.2 AND `rating`<=0.21
Scheinbar speichert MySql die Daten nicht ganz so genau.
Nur kann ich im PHP Skript nicht standardmäßig 0,1 draufaddieren und daraus die Abfrage machen, da die ratings auch 0.02 sein könnten.
Welche Möglichkeit gibt es noch ohne die Struktur der DB zu ändern, die dieses Problem lösen würde?