Используйте group by с find_in_batches в Rails - PullRequest
0 голосов
/ 20 марта 2019

У меня есть таблица topic_followers в MySQL со схемой, подобной этой

id, user_id, topic_id, creation_date, modified_date

Я попытался использовать выражение ниже, чтобы получить список тем, за которыми следит каждый пользователь:

TopicFollower.select("user_id, group_concat(topic_id) as topic_ids").group("user_id").find_in_batches { |group| ... }

Однако,find_in_batches автоматически добавляет «ORDER BY topic_followers. id ASC» к запросу и вынуждает меня добавить «id» для выбора предложения, которое противоречит предложению группы.Любое предложение, как я могу сделать пакетные запросы с группой?

Еще один связанный вопрос, есть ли практическое правило, когда я должен начать пакетировать запросы?Как проходит процесс принятия решения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...