или сделать несколько запросов к бд?
...
channels = database.get_channels_from_black_list()
counters = {
'red': 0,
'yellow': 0,
'green': 0,
'grey': 0
}
# channel.status: "red" | "yellow" | "green" | "grey"
for channel in channels:
counters[channel.status] += 1
Я просто не очень вдупляю что быстрее работает
А в чем проблема в where указать нужные статусы?
SELECT status, COUNT(*) AS count FROM channels_black_list GROUP BY status; Нашел подход адекватнее, как мне кажется
и чем больше строк в таблице, тем эффективнее будет делать всякие агрегации запросом, нежели всю таблицу грузить в приложение чтобы там всё посчитать
Что мешает провести тест?
Обсуждают сегодня