Рельсы выбирают разные - PullRequest
4 голосов
/ 11 июля 2011

в сценарии я хочу получить записи с разными значениями, поэтому я использовал для этого разные,

Book.where (["user_id =?", @ User_id]). Select ('Different title_id')

`this, only retrives the records like this [#<Book title_id: 30>, #<Book title_id: 31> ]`

но я хочу получить идентификатор книги вместе с title_id

Итак, посоветуйте, пожалуйста, как с этим работать

спасибо

1 Ответ

11 голосов
/ 11 июля 2011

использовать группирование:

Book.where(:user_id => @user.id).grouped('title_id')

Проблема в том, что если вы делаете группировку, у вас не может быть разных идентификаторов книг, они все сгруппированы в один ряд.Вы можете использовать GROUP_CONCAT, чтобы обойти это:

Book...select('books.*, GROUP_CONCAT(id) as ids')

таким образом, у вас будет атрибут book ids для каждой группы

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