17 votes

passage de valeurs séparées par des virgules dans la requête de filtre de la réponse de solr

Je veux passer des valeurs séparées par des virgules dans la requête de filtre (fq) de la réponse de Solr. Actuellement, lorsque je veux passer plusieurs catégories, j'utilise l'opérateur OR. comme ceci fq=categoryId:3 OR categoryId:55 OR categoryId:34

existe-t-il une solution pour passer des valeurs comme fq=categoryId:3,55,34

28voto

nikhil500 Points 2407

fq=categoryId:(3 55 34) devrait fonctionner si votre opérateur par défaut est OR. Sinon, essayez fq=categoryId:(3 OR 55 OR 34) . C'est ce qu'on appelle Groupement de champs dans la syntaxe des requêtes Lucene. (Solr prend en charge la syntaxe Lucene complète telle que documentée aquí .)

1voto

Si votre champ pour la requête de filtre est de type texte ou chaîne de caractères, vous pouvez également utiliser fq=categoryId :(IN 3 55 34 44). Mais l'opérateur IN ne fonctionnera pas avec des fichiers entiers ou des champs autres que des chaînes ou du texte.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X