I just deployed my app and had to switch from mysql to postgresql. Now when executing my query I get following error:
ActiveRecord::StatementInvalid (PG::GroupingError: ERROR: column "search_terms.id" must appear in the GROUP BY clause or be used in an aggregate function
LINE 1: SELECT "search_terms".* FROM "search_terms" WHERE (search_te...
^
: SELECT "search_terms".* FROM "search_terms" WHERE (search_terms.term like '%%') GROUP BY search_terms.game_id):
I have a table called search_terms
with term:string
and game_id:integer
. A game can have multiple terms. So I want to group the terms that match by the game_id
.
Does anyone know how to solve this?
In my model search_term.rb
, I have defined this search function:
# Search Terms
def self.search(query)
where("search_terms.term like ?", "%#{query}%").group("search_terms.game_id")
end
Thank you for any help.