Zakres numerów DECIMAL type jest znacznie większy niż w przypadku INTEGER lub BIGINT. Największa liczba, którą możesz przechowywać w DECIMAL (65, 0), to 65 dziewiątek. Największa liczba w BIGINT to 18446744073709551615.
DECIMAL (x, 0) jest często nieco droższy dla małych liczb. Rozważ użycie zdefiniowanego INTEGER type, jeśli twoje liczby znajdują się w zakresie jednego z nich.
Wymóg przechowywania w bajtach na ułamek dziesiętny (x, 0) pola zależy od x
według tego wzoru:
Storage = x/9 + Leftover
Leftover = round_up((x % 9)/2) (i.e., about half of the leftover digits)
można przeczytać więcej na temat przechowywania requirements for numeric types w instrukcji MySQL i porównaj dla siebie.
Biorąc pod uwagę problem, który pan przeczytał i zrozumiał pytanie, nie zgadzam się z tym. Dziękujemy za usunięcie "odpowiedzi". – Leo
Dobra, te poprzednie komentarze odnoszą się do http://stackoverflow.com/users/166390/pst, który przyszedł tutaj nie przeczytał mojego pytania, zadeptał go, zredagował tytuł, usunął jego ślady i uciekł. – Leo
To pytanie spotkało się z zaskakującą liczbą edycji, z których większość utrudniła czytanie i podobną liczbę przywracającą. Jeśli musisz dodać własną masę rzeźby, to przynajmniej nie poprawiaj mojej gramatyki języka angielskiego, używając niepoprawnej drugiej wersji językowej. – Leo