0
我有汽车和car_cities车型。我想获得至少有一辆汽车的城市。Rails | PG :: GroupingError
该协会;
Cars
belongs_to :car_city
CarCities
has_many :cars
加入查询;
CarCity.joins(:cars).group("cars.car_city_id").having("count(cars.id) > 0")
这对我的本地环境中工作。但没有在生产上工作。
错误;
An ActionView::Template::Error occurred in search#search_city:
PG::GroupingError: ERROR: column "car_cities.id" must appear in the GROUP BY clause or be used in an aggregate function
LINE 1: SELECT “car_cities".* FROM "car_cities” INNER JOIN "cars"…
^
: SELECT “car_cities".* FROM “car_cities” INNER JOIN “cars” ON “cars"."car_city_id” = “car_cities"."id” WHERE "car_cities"."car_country_id” = $1 GROUP BY cars.car_city_id HAVING count(cars.id) > 0
app/views/search/_search_filters.html.erb:88:in `block in _app_views_search__search_filters_html_erb__3215729544581234245_70286113854020'
为什么不根据car_cities.id而不是cars.car_city_id进行分组。两者实际上是相同的记录吗? –