Je souhaite filtrer mon jeu de résultats avant de lancer une recherche. Je sais que la façon correcte de le faire est d'utiliser le paramètre de requête de filtre (fq). Cependant, je veux filtrer en fonction de la sortie d'une fonction effectuée sur un champ.Utilisation d'une fonction dans une requête de filtre dans Solr
J'ai un champ 'rating' qui est un entier compris entre 1 et 75000. La limite supérieure peut changer. Je veux filtrer vers le top 500 des articles avec le 'rating' le plus élevé. Dans SQL ce serait quelque chose comme:
... ORDER BY rating DESC LIMIT 500
Je pense que je peux obtenir les documents solr classés par notes descendant en utilisant la fonction Rord (note), donc en gros je voudrais faire:
fq=rord(rating):[0 TO 500]
Mais cela ne semble pas possible. Est-ce que quelqu'un sait ce que je pourrais faire d'autre?
Je ne peux pas limiter les réponses à 500 car a. Cela enlèverait le point de pagination; et B. Je veux lancer une requête de filtre afin que je puisse faire une facette dans les 500 documents. – cubabit