и у хранения в Интах в копейках?
Подскажите плз
Инты нужно постоянно на 100 множить делить на фронте например Децимал обычно представлены строкой, вроде в мускуле так, и вся арифметика делается в sql (возможно ошибаюсь)
В децимал можно любую точность указать
Умножать/делить хотел на бэке, через хук в sequelize для модели
Я хз как в секвалайзе, но хук работать будет на все запросы и загрузки моделей?
Используй корректный тип в базе
"Мускуль недобаза", так что будем обходится тем что есть
Корректный, т.е имеете ввиду Decimal ? Других вариков сейчас нет в распоряжении
декимал подходит для расчета денег, точность для крипты от 8 до 10 знаков после запятой
Да, это понял, в моем случае просто возможно даже лишней будет такая точность, поэтому никак не могу решить что лучше в итоге инты или decimal взять
да все просто - деньги - значит int или decimal
А обновиться не вариант?
Да в остальном хватало всех возможностей, а с типом данных для денег уже разобрались, int подойдет для моей задачи)
Ну если она такая древняя там потом много не будет хватать...
Понял Посмотрю тогда, либо на постгрес перейду, либо мб здесь версию обновлю
Вообще если только фиатные валюты и нужен int, то записывать лучше в виде копеек. Т.е. 100 рублей как 10000. И на клиенте будет деление на 100, для отображения. Телеграм апи платежек, как и многие банковские системы, которые в 1 поле выдают цену в numeric формате используют данный способ. Ибо 0.1+0.2 !== 0.3) а вот 10 + 20 = 30 ))
Так и сделал в итоге, спасибо)
Обсуждают сегодня