async def register(self, user):
async with self.pool.acquire() as conn:
async with conn.cursor() as cur:
result = await cur.execute("SELECT * FROM profile WHERE uid=%s", user.id)
row = await cur.fetchall()
if result == 0:
await cur.execute("INSERT INTO profile VALUES( CAST(admin as text))")
else:
return row
Как сделать поле Admin(int) в str, что бы место цыфр ролей были нормальные роли, как (Участник, Хелпер, Админ, Модератор), а не 1, 2, 3, 4
cur.execute("INSERT INTO profile VALUES( CAST(admin as text))")
my_awesome_dict = {
1: "Первый",
2: "Второй",
10: "Десятый".
}
print (my_awesome_dict[admin])
INSERT INTO имя_таблицы VALUES (значение1, значение2, значение3...);
INSERT INTO имя_таблицы (колонка1, колонка2, колонка3) VALUES (значение1, значение2, значение3...);
INSERT INTO vip_users (user_id, name, vip_end_date) SELECT id, name, '2022-12-31' FROM users WHERE register_date >= '2022-05-01';
CREATE TABLE test (x INT, y TEXT);
INSERT INTO test (1, 2);
INSERT INTO test (2, 'a');
SELECT * FROM test;
SELECT CAST(x AS TEXT), y FROM test;
SELECT x, CAST(y AS INT) FROM test;
UPDATE users SET vip_status=1,vip_end_date='2022-12-31'; -- поменяет все строки таблицы
UPDATE users SET vip_status=1,vip_end_date='2022-12-31' WHERE register_date>='2022-05-01'; -- поменяет строки по указанному условию
UPDATE users SET vip_status=0 WHERE id IN (SELECT user_id FROM banned_users); -- поменяет для списка id, взятых из запроса по другой таблице