我是索尔的新人。 我有来自MySQL JDBC dataimport的Solr中的字段。该字段的数据库列的值是“test,test2,test3”。如果我在Solr中选择fieldtype
我想访问Solr中的每个值以与“另一个字符串”进行比较。所以“test1”比较“另一个字符串”,“test2”比较“另一个字符串”,依此类推。我怎么能在Solr那样做?也许它的查询或什么?使用循环或某些东西或一些棘手的东西?
答案 0 :(得分:0)
您可以使用具有可在逗号上拆分的标记生成器的其他字段类型。在您的情况下,您可以将以下内容添加到架构的相关部分:
<types>
<fieldType class="solr.TextField" name="comma_separated">
<analyzer>
<tokenizer class="solr.SimplePatternTokenizerFactory" pattern=","/>
</analyzer>
</fieldType>
</types>
<fields>
<field name="my_comma_separated_field" indexed="true" stored="true" multiValued="true" type="comma_separated" />
</fields>
现在,当您为comma_separated
字段编制索引时,您的值将按逗号分隔,并且您可以搜索其中的每一个。
PS。根据需要将其他过滤器添加到fieldType定义中。
您可以找到令牌生成器文档here