Ответ 1
Значения десятичного значения DECIMAL сохраняются точно. Например. DECIMAL (10, 2) идеально подойдет для цен не выше 99999999,99. Справочник по документам MySQL
У меня есть столбец price
в таблице products
.
Интересно, какой тип MySQL наиболее подходит для этого столбца. Это DECIMAL
, FLOAT
или что-то еще?
Цена может быть, например: 139.99
, 40
, 14.5
(2 цифры после десятичной точки, как в магазинах).
Просьба сообщить.
Значения десятичного значения DECIMAL сохраняются точно. Например. DECIMAL (10, 2) идеально подойдет для цен не выше 99999999,99. Справочник по документам MySQL
DECIMAL - лучший выбор. Вам нужно будет указать точность и масштаб для столбца. Precision указывает общее количество цифр, которое будет содержать номер, а масштаб означает, сколько из них предназначено для использования в экспоненте.
Тип поля "Десятичный" будет работать лучше всего. Как:
`product_price` decimal(8, 2) NOT NULL,
Он сохранит цену до 999999.99
Если у вас есть высокие цены, вы можете использовать
`product_price` decimal(12, 2) NOT NULL,
то есть. до 9999999999.99
Вы должны обязательно использовать десятичный тип для денег. Никогда не плавающая точка, вопреки другим ответам. И использование varchar предотвращает выполнение расчетов.