【问题标题】:Performing a relevance search on a RavenDb index (lucene) across all indexed fields在所有索引字段中对 RavenDb 索引 (lucene) 执行相关性搜索
【发布时间】:2017-10-31 14:31:25
【问题描述】:

是否可以在 Lucene / RavenDb 中执行查询(相关性搜索),它会自动搜索索引中的所有字段?

我有一个包含很多字段(40+)的索引,我想到处搜索它。此外,某些领域还应用了提升。

我理想的查询是简单的

red dog

这将返回所有包含这些关键字的文档,按相关性排序。

这可能吗,还是我必须添加一个手动字段,其中包含 40 个字段中的所有术语?

【问题讨论】:

    标签: lucene ravendb


    【解决方案1】:

    您必须有一个包含您想要的所有术语的字段。 另请参阅此处概述的技术:https://ayende.com/blog/153729/lazys-man-comprehensive-search-with-ravendb

    public class Users_AllProperties : AbstractIndexCreationTask<User, Users_AllProperties.Result>
    {
        public class Result
        {
            public string Query { get; set; }
        }
        public Users_AllProperties()
        {
            Map = users =>
                  from user in users
                  select new
                  {
                      Query = AsDocument(user).Select(x => x.Value)
                  };
            Index(x=>x.Query, FieldIndexing.Analyzed);
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2017-01-29
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 1970-01-01
      • 2012-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多