Lucene pas une requête nulle?
Comment pouvons-nous construire une requête de recherche pour le domaine particulier afin de ne pas être null?
field_name:*
ne fonctionne pas.
J'ai essayé field_name:[a* to z*]
cela fonctionne bien pour l'anglais, mais ne couvre pas toutes les langues.
Tout autres suggestions?
source d'informationauteur Chandra
Vous devez vous connecter pour publier un commentaire.
Ce n'est actuellement pas pris en charge par Lucene. Voir cette pour une discussion.
Une autre option peut être de stocker quelques pré-définis de la chaîne (comme
nullnullnullnull
) que le champ de valeur que si elle est null. Ensuite, vous pouvez utiliser un filtrage négatif pour supprimer ces enregistrements. (Je n'aime pas beaucoup, mais ne peut pas penser à un meilleur option)J'ai trouvé que cela fonctionne dans certains cas
field:([0 TO 9] [a TO z])
J'ai eu le même problème mais il y a une propriété que vous pouvez définir sur l'analyseur de requête qui vous permet d'avoir des caractères génériques au début d'un terme de recherche.
Cela a résolu le problème pour moi
Veuillez voir Générique au Début d'une searchterm -Lucene
Essayer
field:[* TO *]
oufield:["" TO *]
. Mais c'est probablement mieux d'utiliser un filtre pour ce bien.J'ai juste commencé à jouer avec lucene (via logstash elastic search) et de trouver que cela semble fonctionner à partir de la kibana de l'INTERFACE utilisateur. Je ne suis pas encore sûr si ce est un peu d'intelligence dans l'élastique de la recherche ou de l'kibana, je sais juste que elastic search emprunte à la lucene syntaxe.
sera de retour tous les résultats de mes tests unitaires qui n'ont pas eu une exception
renvoie ceux qui ont un non-nulle exception indexés. de sorte que vous pouvez essayer juste
ou