问题在这里很简单。您正试图在标记化字段(文本)方面。这意味着每个令牌将被分开计数。我建议你添加新的字段(在schema.xml文件中),你将使用与字段Make
相同的数据(例如使用复制字段)来提供。这个新字段应该是带KeywordTokenizer的字符串或文本。
请看下面的例子。我添加了两种类型:string和text_not_tokenized。然后定义了两个字段Make_string和Make_nonTokenized。当小面在他们每个人,你应该看到 “福特嘉年华”
所以,你可以查询
http://Siteurl:8080/solr/metro/select?q=*:*&rows=0&wt=json&indent=true&facet=true&facet.field=Make_string
或
http://Siteurl:8080/solr/metro/select?q=*:*&rows=0&wt=json&indent=true&facet=true&facet.field=Make_nonTokenized
。
...
<fieldType name="string" class="solr.StrField" sortMissingLast="true" />
<fieldType name="text_not_tokenized" class="solr.TextField">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
</analyzer>
</fieldType>
...
<field name="Make_string" type="string">
<field name="Make_nonTokenized" type="text_not_tokenized">
....
嗨 我排序了这一点自己。在Schema.xml文件中,我只需要将Make字段类型设置为字符串,它之前已添加为文本 – 2014-12-05 13:07:01