Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] mnożenie kolumn i sumowanie wierszy
Forum PHP.pl > Forum > Bazy danych > MySQL
piotrek24
Otóż mam dwie kolumny: ilość i cena (obie typu float)

Wypełniam je przykładowymi wartościami

ilość | cena (PLN)
200 | 2
5 | 4.5
56 | 0.7
22 | 7.4

I teraz mnożę kolumny i dodaję wiersze w zapytaniu sql

  1. SELECT SUM( `ilosc` * `cena` )
  2. FROM `jakas_tam _tabela`


Otrzymuję wynik: 624.50000143051

A moje pytanie brzmi: Skąd się bierze ta dziwna reszta daleko po przecinku?, skoro normalny wynik takich obliczeń to po prostu 624.5 ?
Sedziwoj
Przeczytaj jak są przetrzymywane liczby zmiennoprzecinkowe to się dowiesz skąd.
Dlatego błędem jest używanie takich pól do trzymania kwot pieniędzy, albo powinno się trzymać w groszach, albo w dwóch osobnych zł i gr, albo używać numeric, który zupełnie inaczej przechowuje te dane (stałoprzecinkowy)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.