首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure搜索相关性

Azure搜索相关性
EN

Stack Overflow用户
提问于 2016-08-17 10:10:03
回答 2查看 396关注 0票数 1

需要帮助,我有一个名为customer的蓝色索引,其中有两个字段-- customers & contacts,我已经为两个字段应用了boost函数( boost 100和90 ),问题是当我搜索任何文本时,它首先返回与客户相关的内容,然后再联系相关性。

如果我搜索" Johnson“,它将首先返回所有客户详细信息,然后再返回联系人详细信息,即使联系人名与"Johnson”匹配。

显示的记录列表。

记录1:这是客户

  1. 强生与泰森分部:企业垂直:医疗保健国家:美国

记录2:这是与客户“约翰逊和泰森”有关的联系方式。

  1. 迈克尔·沃尔顿客户:Johnson和tyson分部:企业垂直:制药

记录3:这是与客户“约翰逊和泰森”有关的联系方式。

  1. Henri Vliegen客户:Johnson和tyson分部: Ent连垂直:制药

记录4:这是与客户"WST“相关的联系人。

  1. Henri Johnson客户:WST部分:企业垂直:制药

因此,在这种方式下,记录最可能是在得分时显示的,但是,我希望先显示相关的名称,就像记录4是联系人,而且它应该代替记录2,因为Johnson是姓氏。

EN

回答 2

Stack Overflow用户

发布于 2016-08-17 21:07:52

我相信这是因为你用同样的价值观来提升,所以它是这样的:

代码语言:javascript
复制
if(Customer.Contains("Johnson") || (Contact.Contais("Johnson"))
{
   //display
}

//PS:这个声明只是为了澄清联系人和客户名称具有同样的重要性。

试着用不同的价值观来提升,我相信它会奏效的。(客户100人,详情90人)。

UPDATE

似乎您正在分别为名字和姓氏建立索引。如果您有一个字段“全名”,并通过它,您可能会得到预期的结果。另一个选项是使用以下字段创建得分配置文件:

https://azure.microsoft.com/en-us/documentation/articles/search-get-started-scoring-profiles/

票数 1
EN

Stack Overflow用户

发布于 2016-08-18 13:02:48

我把这个问题读了好几遍。虽然问题提到您有一个索引,但显示的记录意味着您实际上有两个搜索索引。这是正确的吗?我一直在研究一个Azure搜索培训课程,它深入讨论索引和评分。

此时,Azure搜索不支持交叉索引查询。因此,如果我对问题的理解是正确的,那么您必须运行两个查询:第一个关于客户索引,第二个针对联系人索引。Azure搜索之所以能够如此快速地执行搜索,部分原因在于它是一个扁平的数据结构,它允许快速查找和查询。然而,您的场景意味着某种关系性的东西。

我误解你的问题了吗?

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

https://stackoverflow.com/questions/38993696

复制
相关文章

相似问题

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