Spec-Zone .ru
спецификации, руководства, описания, API
|
DECIMAL
и NUMERIC
типы хранят точные числовые значения
данных. Эти типы используются, когда важно сохранить точную точность, например с денежно-кредитными данными. В
MySQL, NUMERIC
реализуется как DECIMAL
, так неотступно
следующие комментарии DECIMAL
применяйтесь одинаково к NUMERIC
.
Хранилища MySQL 5.7 DECIMAL
значения в двоичном формате. См. Раздел
12.19, "Математика Точности".
В a DECIMAL
объявление столбца, точность и масштаб могут быть (и обычно),
определенный; например:
salary DECIMAL(5,2)
В этом примере, 5
точность и 2
масштаб. Точность
представляет число существенных цифр, которые сохранены для значений, и масштаб представляет число цифр, которые
могут быть сохранены после десятичной точки.
Стандартный SQL требует этого DECIMAL(5,2)
будьте в состоянии сохранить любое
значение пятью цифрами и двумя десятичными числами так значения, которые могут быть сохранены в salary
диапазон столбца от -999.99
к 999.99
.
В стандартном SQL, синтаксисе DECIMAL(
эквивалентно M
)DECIMAL(
. Точно так же
синтаксис M
,0)DECIMAL
эквивалентно DECIMAL(
, где реализации разрешают решить значение M
,0)M
. MySQL поддерживает обе из этих различных форм DECIMAL
синтаксис. Значение по умолчанию M
10.
Если масштаб 0, DECIMAL
значения не содержат десятичной точки или дробной части.
Максимальное количество цифр для DECIMAL
65, но фактический диапазон для данного
DECIMAL
столбец может быть ограничен точностью или масштабом для данного столбца.
Когда такой столбец присваивается значение с большим количеством цифр после десятичной точки, чем разрешается
указанным масштабом, значение преобразовывается в тот масштаб. (Точное поведение работает специфичный для
системы, но обычно эффект является усечением к допустимому числу цифр.)