Model.group (: id) выдает ошибку «Список выбора отсутствует в предложении GROUP BY содержит неагрегированный столбец« id » - PullRequest
0 голосов
/ 09 мая 2019

Я использую Model.group (: category) для получения уникальных записей на основе поля категории в приложении Rails 5.Данные таблицы:

id catgeory description
1    abc      test
2    abc      test1
3    abc      test2
4    xyz      test
5    xyz       testabc

Я хочу записи (1,4) в результате.Поэтому я использую Model.group (: category), которая прекрасно работает для MYSQL, у которого sql_mode "".К сожалению, он выдает ошибку «Список SELECT отсутствует в предложении GROUP BY и содержит неагрегированный столбец, который функционально не зависит от столбцов в предложении GROUP BY; это несовместимо с sql_mode = only_full_group_by», у которого sql_mode - «only_full_group_by».Каков наилучший способ изменить запрос в соответствии с режимом?

1 Ответ

0 голосов
/ 09 мая 2019

Возможно, попробуйте указать, какой id вы хотите?Вы можете использовать MIN(id), MAX(id) и т. Д.

MySQL поддерживает нестандартное расширение для SQL , описанное здесь .Чтобы продолжить использовать это поведение, вы можете изменить sql_mode на TRADITIONAL в config/database.yml.

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