Comment regrouper les résultats de recherche renvoyés par Lucene par des champs (similaires à ceux de SQL Server)?Comment regrouper dans les résultats de recherche Lucene?
Répondre
https://issues.apache.org/jira/browse/LUCENE-1421
il semble que vous ne pouvez pas. Il y a peut-être une solution de contournement: theres un fil ici qui décrit comment quelqu'un d'autre l'a fait: here
Il n'est pas clair si vous voulez un vrai comportement de type SQL "GROUP BY", ou simplement un "ORDER BY" comportement. Il n'y a rien de tel que les fonctions d'agrégation dans Lucene, donc "GROUP BY" devrait être implémenté dans votre application, en plus de Lucene.
Cependant, le tri des champs est assez facile. Assurez-vous que le champ souhaité est indexé et créez un objet org.apache.lucene.search.Sort
à transmettre dans le cadre des critères de recherche; la plupart des méthodes de recherche ont une surcharge qui accepte une instance Sort
.
Si vous deviez mettre en œuvre votre propre « GROUP BY » logique, ayant les résultats affichés par ordre « » les champs appropriés est une première étape utile.
Lucene a quelques bibliothèques suplimentary, l'une étant ce dont vous avez besoin: Grouping
Vous ne pouvez regrouper par des valeurs de requête de fonction, ni par des requêtes arbitraires (comme Solr fait), mais vous pouvez par champ à valeur unique.
Quelque chose de similaire (recherche à facettes) sera mis en œuvre Lucene 4.0
Lucene 3.4 prend désormais en charge la recherche à facettes. Lors de l'indexation, vous spécifiez quelque chose de supplémentaire et au moment de la recherche, vous effectuez une recherche par requête et par groupe.
pour les 3 prochaines docs, que vous indexez avec ces groupes
doc1: monday, 1pm, 3min
doc2: monday, 1pm, 4min
doc3: monday, 2pm, 3min
vous pouvez rechercher uniquement pour le premier param: lundi, et obtenir la valeur: 3, ou vous pouvez explorer et rechercher lundi/13 heures et la valeur obtenir: 2 ou profondeur ensemble de la recherche 3 et obtenir
monday :3
monday/1pm :2
monday/1pm/3min :1
monday/1pm/4min :1
monday/2pm :1
monday/2pm/3min :1
est ici le source sample:
Mais la plupart o f tous lu faceted search
- 1. Pertinence de Lucene résultats de recherche
- 2. Trouver la position des résultats de recherche de Lucene
- 3. Comment filtrer les résultats de recherche dans cet exemple
- 4. Recherche multi-champs dans Lucene
- 5. Linq/XML: regrouper correctement les résultats dans l'élément XML
- 6. Opérateurs imbriqués/require dans les requêtes de recherche Lucene
- 7. Comment puis-je regrouper les données hors d'une recherche google
- 8. Lucene .NET sous-ensembles de résultats
- 9. recherche Lucene avec requête complexe
- 10. Comment implémenter le classement des résultats de recherche personnalisé?
- 11. Lucene .Net Recherche avec TermVector
- 12. Centrer automatiquement les résultats de recherche vim
- 13. Comment chercher tous les résultats dans lucene.net
- 14. Comment stocker un hachage avec les résultats de la recherche?
- 15. Comment obtenir la liste de tous les mots clés de recherche dans Lucene?
- 16. Comment analyser les résultats de recherche sur Youtube?
- 17. Application d'un ou plusieurs filtres de niveau champ sur les résultats de recherche
- 18. Aide nécessaire à la commande des résultats de recherche
- 19. Lucene - Recherche de plusieurs termes dans différents champs
- 20. Problème avec Lucene: la recherche n'indexe pas les valeurs numériques?
- 21. Trouver toutes les fonctionnalités dans Lucene
- 22. Aucun résultat trouvé avec Zend Lucene Recherche
- 23. Mediawiki + Lucene: Comment supprimer un balisage?
- 24. MySql Recherche Browers résultats
- 25. Linq/XML: regrouper les résultats correctement dans l'élément XML - avec des jointures internes!
- 26. Sélectionner, regrouper et additionner les résultats de la base de données
- 27. Comment conserver les résultats d'une recherche avec Postgres
- 28. Comment regrouper les données dans des seaux dans Microsoft SQL
- 29. Mysql combien de résultats de recherche
- 30. Obtenir par programme les résultats de recherche Google
lien est rompu. Peut-être que le nouvel emplacement est le suivant: http://lucene.apache.org/core/old_versioned_docs/versions/3_2_0/api/contrib-grouping/org/apache/lucene/search/grouping/package-summary.html –
Oui, ty . Lien brisé mis à jour. – mihaicc