Just curious if there are some suggestions here. The use case is fairly simple:
Given a query like python OR solr OR hadoop, I want to sort results by "number of keywords matched" first, and by relevancy separately. I can think of ways to do this, but not efficiently. For example, I could do: q=python OR solr OR hadoop& p1=python& p2=solr& p3=hadoop& sort=sum(if(query($p1,0),1,0),if(query($p2,0),1,0),if(query($p3,0),1,0)) desc, score desc Other than the obvious downside that this requires me to pre-parse the user's query, it's also somewhat inefficient to run the query function once for each term in the original query since it is re-executing multiple queries and looping through every document in the index during scoring. Ideally, I would be able to do something like the below that could just pull the count of unique matched terms from the main query (q parameter) execution:: q=python OR solr OR hadoop&sort=uniquematchedterms() desc,score desc. I don't think anything like this exists, but would love some suggestions if anyone else has solved this before. Thanks, -Trey