Как лучше хранить баланс?

Есть такая таблица, в которой хранится баланс пользователей:
  • userId
  • balance
  • holdBalance


Сейчас в поле balance хранятся как деньги, заработанные пользователем в рамках сервиса, так и введённые им в сервис (пополнение баланса). Нужно вынести деньги, которые пользователь ввёл в систему, в отдельную колонку, условно depositBalance, которая нужна для упращения логики механизма вывода средст.

Как лучше поступить?
  1. Хранить все деньги в колонке balance, а depositBalance использовать параллельно ().
  2. Хранить деньги, заработанные в системе, в таблице balance, а в depositBalance введённые в системе. На уровне модельки/контроллера складывать оба значения.
  3. Что-то другое...
  • Вопрос задан
  • 655 просмотров
Решения вопроса 1
@lega
1-й вариант + транзакционный журнал
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sim3x
@sim3x
user_id
balance_change = Decimal
datetime

баланс получаем как сумму balance_change

Или можно помучаться с локами записи
Или можно поиметь проблем при race updates
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы