SQLite comparison discord.py

Как сделать проверку на то что есть ли у человека нужное кол-во монет или баллов?

class button(discord.ui.View):
    def __init__(self) -> None:
        super().__init__(timeout=None)
        self.value = None
    @discord.ui.button(emoji=None,label="1",style=discord.ButtonStyle.grey)
    async def us(self, interaction: discord.Interaction, button: discord.ui.Button):
            cursor.execute("UPDATE admin SET admin_balls = admin_balls - 800 WHERE id = '{}'".format(interaction.user.id))
            connection.commit()
            await interaction.response.send_message(embed = discord.Embed(title="Успешно!",description="Вы успешно купили `Снятие устного предупреждения`, ожидайте выдачи товара",colour=0xFD0DFB),ephemeral=True)
            await bot.get_channel(1044681310700044368).send(embed= discord.Embed(description=f"Администратор {interaction.user.mention} купил `снятие устного предупреждения`",colour=0xFD0DFB))

Ответы (2 шт):

Автор решения: FlamyIce

Сделай цикл for по выводу данных из бд, после чего в этом цикле делай нужную тебе проверку. Так же можно просто создать список до цикла и в цикле просто заполнить список и уже после этого сделать проверку.

Пример кода первого варианта:

for i in cursor.execute(f'SELECT * FROM твобя бд WHERE id = {interaction.user.id}'):
    if i[индекс поля с монетами] >= кол-во монет:
        await interaction.response.send_message(embed = discord.Embed(title="Успешно!",description="Вы успешно купили `Снятие устного предупреждения`, ожидайте выдачи товара",colour=0xFD0DFB),ephemeral=True)
→ Ссылка
Автор решения: q r t s

Проверку сделать очень просто:

    for row in cursor.execute(f"SELECT admin_balls FROM название WHERE id = {interaction.user.id}"):
        if row[0] >= 1000:

Далее отнимаем баланс:

            cursor.execute(f"UPDATE название SET admin_balls = admin_balls-1000 WHERE id={interaction.user.id}")
→ Ссылка