MySQL: лучший способ управлять пользовательским балансом?

Краткий вопрос:
Каков наилучший способ управления пользовательским балансом и пользовательскими транзакциями?

Вероятно, я бы создал таблицу транзакций, в которой я бы регистрировал каждую транзакцию, а затем выбирал ее, чтобы получить фактический баланс пользователя. Но разве это не будет медленным после тысячи транзакций одного и того же пользователя? Ускорит ли представление вещи?

Или я должен сохранить баланс пользователя в пользовательской таблице и обновить его транзакцией mysql, пока я вставляю в таблицу транзакций?

Не паникуйте. Я не собираюсь обращаться с реальными деньгами.

-2

Решение

Да, расчет баланса на лету из всех транзакций будет довольно медленным; представление упростит написание запросов, но не окажет большого влияния на производительность (представление — это просто сокращение, это не фактическая таблица).

Вы должны пойти вторым методом: поставить текущий баланс в account или же user таблицы, отделите ее от всех транзакций и обновляйте при каждом добавлении транзакции.

1

Другие решения

Ты можешь использовать триггеры за это. Всякий раз, когда новая запись добавляется в transactions таблица, запуск обновлений users Таблица.

1