Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
6.5
-
None
-
None
Description
Using movielens data (users, movies, ratings), I tried the following SQL:
curl --data-urlencode "stmt=SELECT solr.title as title, avg(rating) as avg_rating FROM ratings INNER JOIN (select movie_id,title from movies where _query_='plot_txt_en:love') as solr ON ratings.movie_id = solr.movie_id GROUP BY title ORDER BY avg_rating DESC LIMIT 10" "http://localhost:8983/solr/movies/sql?aggregationMode=facet"
Solr returns this error:
{"result-set":{"docs":[{"EXCEPTION":"Failed to execute sqlQuery 'SELECT solr.title as title, avg(rating) as avg_rating FROM ratings INNER JOIN (select movie_id,title from movies where _query_='plot_txt_en:love') as solr ON ratings.movie_id = solr.movie_id GROUP BY title ORDER BY avg_rating DESC LIMIT 10' against JDBC connection 'jdbc:calcitesolr:'.\nError while executing SQL \"SELECT solr.title as title, avg(rating) as avg_rating FROM ratings INNER JOIN (select movie_id,title from movies where _query_='plot_txt_en:love') as solr ON ratings.movie_id = solr.movie_id GROUP BY title ORDER BY avg_rating DESC LIMIT 10\": From line 1, column 29 to line 1, column 39: Cannot apply 'AVG' to arguments of type 'AVG(<JAVATYPE(CLASS JAVA.LANG.STRING)>)'. Supported form(s): 'AVG(<NUMERIC>)'","EOF":true,"RESPONSE_TIME":92}]}}
rating is a TrieInt with docValues enabled.
<field name="rating" type="tint" docValues="true" multiValued="false" indexed="true" stored="true"/>
see screenshot