首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当Solr上存在唯一值时,如何添加额外的字段值?

问当Solr上存在唯一值时,如何添加额外的字段值?
EN

Stack Overflow用户
提问于 2013-10-01 20:07:24
回答 1查看 62关注 0票数 0

下面是我的配置文件的一部分:

代码语言:javascript
复制
<fields>
        <field name="neoId" stored="true" type="sint" indexed="true" required="true" />
        <field name="skillString" stored="true" type="string" indexed="true" required="true" />
        <field name="skillName" stored="true" type="text" indexed="true" required="true" />


      </fields>

      <uniqueKey>skillString</uniqueKey>
      <defaultSearchField>skillName</defaultSearchField>

添加新文档时,如果存在skillString,则不会添加该文档。那很好。但是文档的neoId字段可能与索引上的不同。因此,当skillString已经存在时,我想在索引上的文档中添加一个额外的neoId。有没有办法做到这一点?因为我找不到方法。我认为首先检查它是否存在,然后相应地添加文档或更新文档;但我希望在单个查询中做到这一点,因为它将在一个巨大的(40k)循环中不断运行。

EN

回答 1

Stack Overflow用户

发布于 2013-10-01 21:46:15

由于skillString是您添加新文档时的唯一键,并且该唯一键是相同的,因此Solr将覆盖您的整个文档(即.所有字段)。Solr没有正确的更新操作,所以每次都会删除并重新插入文档。

因此,如果您只是更新文档,Solr应该会自动满足您的需求。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19115740

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档