Interessante vraag.
Ik zou eigenlijk niet voor float kiezen in de mysql-omgeving. Te veel problemen in het verleden met precisie met dat datatype.
Voor mij zou de keuze zijn tussen int
en decimal(18,4)
.
Ik heb voorbeelden uit de echte wereld gezien die worden gebruikt om drijvende-kommawaarden weer te geven. De internals van JD Edwards datatables doen dit allemaal. Hoeveelheden worden meestal gedeeld door 10000. Hoewel ik zeker weet dat het sneller en kleiner is in de tabel, betekent dit alleen dat we de ints altijd naar een decimale waarde moeten CASTen als we er iets mee willen doen, vooral delen.
Vanuit een programmeerperspectief zou ik altijd liever werken met decimal
voor prijs (of money
in RDBMS'en die dit ondersteunen).