Je veux utiliser une requête comme:Comment implémenter une requête liée Solr ou SolrJ?
sql(select name where id > 10 and id < 100)
en utilisant Solr ou SolrJ, mais ne savent pas comment mettre en œuvre? Quelqu'un peut-il expliquer?
Je veux utiliser une requête comme:Comment implémenter une requête liée Solr ou SolrJ?
sql(select name where id > 10 and id < 100)
en utilisant Solr ou SolrJ, mais ne savent pas comment mettre en œuvre? Quelqu'un peut-il expliquer?
Vous avez besoin d'une requête de plage, comme décrit dans SolrQuerySyntax. Fondamentalement, vous collectez tous les documents pertinents en utilisant une plage de requête, puis sélectionnez le champ de nom. La syntaxe est quelque chose comme:
http://localhost:8983/solr/select?q=id:[10 TO 100]&fl=name
(Vous aurez besoin d'échapper à l'URL).
Merci! Par exemple, Mon index a 3 champ: titre, x et y, et je veux interroger comme: SQL (sélectionner le titre où x> 10 et x < 100 and y > 20 et y <300), comment faire en utilisant Solr gamme requête? – EthanHu
Vous devez combiner deux requêtes de plage (pour le x et le y) en utilisant ET par défaut. Voir http://wiki.apache.org/solr/LocalParams pour savoir comment faire. En outre, si vous voulez que les plages soient non inclusives (par exemple x> 10 au lieu de x> = 10), vous devez utiliser une parenthèse bouclée {à la place d'une parenthèse carrée [ –