PostgreSQL — предложение GROUP BY или использование в агрегатной функции

Я нашел несколько тем здесь на SO, но я все еще могу не могу найти правильную настройку для моего запроса

Это запрос, который хорошо работает на локальном хосте:

@cars = Car.find_by_sql('SELECT cars.*, COUNT(cars.id) AS counter 
                         FROM cars 
                         LEFT JOIN users ON cars.id=users.car_id 
                         GROUP BY cars.id ORDER BY counter DESC')

Но на Heroku выдает ошибку выше — GROUP BY или использовать в агрегатной функции.

Затем я где-то прочитал, что я должен указать все столбцы в таблице, поэтому я попробовал это:

@cars = Car.find_by_sql('SELECT cars.id, cars.name, cars.created_at, 
                                cars.updated_at, COUNT(cars.id) AS counter 
                         FROM cars 
                         LEFT JOIN users ON cars.id=users.car_id 
                         GROUP BY (cars.id, cars.name, cars.created_at, cars.updated_at) 
                         ORDER BY counter DESC')

Но это не работает на локальном хосте, а также не на Heroku...

Что должен быть правильный конфиг запроса?

29
задан mrjimoy_05 12 August 2013 в 03:23
поделиться