如何使用Solr中给定名称的产品计数搜索关键字



我为每种产品都有多个关键字。我想用关键字搜索产品数

http://127.0.0.1:8983/solr/collection1/select?facet.field=keywords& q = keywords:*weicher*&amp q.p.q.p.q.p == on& facet = true& facet.mincount = 1& fl =关键字,名称

 {     
  "response":{"numFound":3,"start":0,"docs":[
  {
    "name":["Transportbeton - 1"],
    "keywords":["Beton",
      "Weicher Beton"]},
  {
    "name":["Transportbeton -  2"],
    "keywords":["Beton",
      "Weicher Beton"]},
  {
    "name":["Transportbeton - 3"],
    "keywords":["Beton",
      "Weicher Beton"]}
  ]   
},
"facet_counts":{
"facet_queries":{},
"facet_fields":{
  "keywords":[
    "Beton",3,
    "Weicher Beton",3]},
"facet_ranges":{},
"facet_intervals":{},
"facet_heatmaps":{}}
}

在这里我仅搜索包含" Weicher"单词的关键字。但是我也在结果中获得其他关键字。

我只能获得与给定输入匹配的那些关键字(带有产品计数)?

solr具有一个方面功能,您可以在其中提供一个方面条件。请参阅https://wiki.apache.org/solr/simplefacetparameters#facet.field

使用方面。facet.field =关键字(字段名称)

http://localhost:8983/solr/collection1/select?indent=on&q=*:*&wt=json&facet=true&facet.field=keywords

您可以使用 facet.prefix 参数。它将限制为以指定前缀开头的术语。

http://localhost:8983/solr/collection1/select?indent=on&q=*:*&wt=json&facet=true&facet.field=keywords&facet.prefix=Weicher

您也可以使用 facet.contains 。它将限制用于构面的术语到包含指定子字符串的术语。

http://localhost:8983/solr/collection1/select?indent=on&q=*:*&wt=json&facet=true&facet.field=keywords&
facet.contains=Weicher

最新更新