Znalazłem kilka tematów na SO, ale nadal nie mogę znaleźć odpowiedniego ustawienia dla mojego zapytania.PostgreSQL - klauzula GROUP BY lub może być używana w funkcji agregującej
To jest kwerenda, że mnie dobrze działa na localhost:
@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')
Ale Heroku daje mi błąd powyżej - klauzuli GROUP BY lub być wykorzystane w łącznej funkcji.
Potem przeczytałem gdzieś, że należy określić wszystkie kolumny w tabeli, więc próbowałem to:
@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')
Ale to nie działa na localhost, a także nie na Heroku ...
Jaka powinna być właściwa konfiguracja zapytania?
Dzięki, że naprawdę pomóc w tej operacji jasne. – edencorbin