@Follin

Как забрать число с базы данных вычесть из него какую-то сумму и разность засунуть обратно в БД?

Есть такой участок кода
elif msg.text == 'Изменить баланс':
        monmon = db.get_money(msg.from_user.id)
        await bot.send_message(msg.from_user.id, "Ваш баланс: " + monmon + "\n\nСколько вы хотите отнять?")
        db.set_signup(msg.from_user.id, 'смена баланса')
        if db.get_signup(msg.from_user.id) == 'смена баланса':
            smen = db.get_money(msg.from_user.id) - msg.text
            db.set_money(msg.from_user.id, smen)

Допустим баланс = 5000, надо вычесть 300 и обратно в базу данных вернуть 4700.

Вот функция db.get_money:
def get_money(self, user_id):
        with self.connection:
            result = self.cursor.execute("SELECT money FROM users WHERE user_id = ?", (user_id,)).fetchall()
            for row in result:
               money = str(row[0])
            return(money)
  • Вопрос задан
  • 118 просмотров
Пригласить эксперта
Ответы на вопрос 1
mayton2019
@mayton2019
Bigdata Engineer
Как-то много текста у тебя написано. Обычно делают.
update users set money=money-sum where user_id=?
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы