Nous avons exigence où il y a trois champs date d'utilisateur, date d'enregistrement et date codée. Nous utilisons Solr pour la recherche et nous avons besoin de récupérer des enregistrements en utilisant la condition si la valeur existe pour la date d'utilisation, sinon vérifier la date d'enregistrement et si elle ne contient pas non plus utiliser la date codée et si les trois champs champ.Requête Solr qui accepte plusieurs champs renvoie la première valeur non nulle dans une liste comme coalesce dans Oracle
Cette exigence est similaire à la fonctionnalité COALESCE dans Oracle où elle accepte deux paramètres ou plus et renvoie la première valeur non nulle dans une liste. Si tous les paramètres contiennent des valeurs nulles, elle renvoie null.
Mise à jour :: Nous utilisons Solr 3.5.0
Par exemple ci-dessous est mes valeurs dans le tableau
DocumentID User entered date Recorded date Encoded date
A123 14th April 2016 12th April 2016
A124 12th April 2016 11th April 2016
A125 13th April 2016 12th April 2016
A126 12th April 2016
A127 15th April 2016
Si nous recherchons pour le 12 Avril 2016 puis Solr devrait me revenir en tant que sortie A124 , A126 et non A123 ou A125 parce que l'utilisateur a entré la date et la date d'enregistrement pour ces champs respectivement.
Je pense que vous devez aborder ce à votre fin une fois que vous obtenez les données en appliquant une certaine logique ... –
il peut être mis en œuvre avec une requête simple utilisant des conditions booléennes OU – Oyeme
@Oyeme J'ai essayé OU condition mais s'il y a des valeurs pour la date de l'utilisateur et la date d'enregistrement. SOLR cherche dans les deux domaines ce que je ne cherche pas. – rajadilipkolli