lendoroff
@lendoroff
Junior Python Developer

Как столбцы из бд отправить одним сообщением?

Когда я беру инфу из таблицы и отправляю её сообщением

sql.execute(f'SELECT name, time FROM "{message.chat.id}"')
for name, time in sql.fetchall():
	await message.answer(name)


То бот мне отправляет всё не одним сообщением, а столько раз, сколько всего столбцов.

Можно как-то засунуть это в одно сообщение? (не использую записи в файл)
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
WolfInChains
@WolfInChains
# получаем данные из БД
result = sql.fetchall()

my_list = []

# добавляем данные из БД в список, где i[0], i[1] поля таблицы
for i in result:
    my_list.append(f"{i[0]} {i[1]}")

# соединяем данные из списка my_list в одну строку, разделяя их через \n (перенос)
my_string = f'\n'.join(i for i in my_list)

print(my_string)


Тоже самое, но в 1 строку
my_string = f'\n'.join(i for i in [f"{i[0]} {i[1]}" for i in sql.fetchall()])
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
yupiter7575
@yupiter7575
Python программист
Метод join -_-
Ответ написан
Ваш ответ на вопрос

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

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