Гайз, привет)
А кто силен в SQL, подскажите плиз, как боролись с такой проблемой:
```
ActiveRecord::StatementInvalid (PG::InvalidColumnReference: ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list)```
Запрос такой: есть участник соревнований - entry. Нам надо найти десятерых последних за него проголосовавших.
То есть: берется участник (entry), ищем его голоса(votes), сортируем по DESC (более поздние), берем у этих голосов айдишники юзеров (уникальные) и потом находим по айдишникам юзеров.
На рельсе это выглядит так:
```
user_ids = @entry.votes.order({
created_at:
:desc }).map(&
:user_id).uniq.take(10)
```
Проблема тут в том, что мы мапим всех, кто проголосовал, а их может быть много. Нам надо десять.
Вот эта штука сработает, но выжрет памяти, тк мы вытаскиваем всех проголосовавших.
Я пробовал такой вариант:
```
@entry.votes.order(
'created_at DESC
').select(:user_id).distinct
```
Но постгрес так не умеет. Может, кто сталкивался?