/ / mysql DECIMAL wymagania dotyczące pamięci - mysql

mysql DECIMAL wymagania dotyczące pamięci - mysql

Czytałem podręcznik mysql i chcę się upewnić, że dobrze rozumiem coś.

Gdybym miał DECIMAL (15,8), oznaczałoby to 6 cyfrowych przed dziesiętnym i 8 po?

Jeśli chcę przenieść się z 15,2 na 8 miejsc po przecinku, to czy powinienem przejść do 21,8, więc nie tracę żadnej precyzji?

Odpowiedzi:

2 dla odpowiedzi № 1

Z dokumentacji mysql: http://dev.mysql.com/doc/refman/5.7/en/fixed-point-types.html


W deklaracji kolumny DECIMAL precyzja i skala mogą być (i zwykle są) określone; na przykład:

salary DECIMAL(5,2)

W tym przykładzie 5 to precyzja, a 2 to skala. Precyzja reprezentuje liczbę cyfr znaczących, które są przechowywane dla wartości, a skala reprezentuje liczbę cyfr, które można zapisać po przecinku dziesiętnym.

Standardowy SQL wymaga, aby DECIMAL (5,2) mógł przechowywać dowolną wartość z pięcioma cyframi i dwoma miejscami po przecinku, więc wartości, które mogą być przechowywane w kolumnie wynagrodzenia zakres od -999.99 do 999,99.