2

在我的搜索查询中,我查询具有多值分类字段的项目。

我从中运行查询的发布页面也具有相同的多值税字段(例如“颜色”)。

例子:

List Items (have color column)
- Item 1: Red, Blue
- Item 2: Yellow, Red, White
- Item 3: Red, Blue, Green
- Item 4: Black

Publishing Page (has color column)
- defined colors are: Red, Green

所有项目都匹配“红色”,但“项目 3”显然是我的最佳匹配,因为它同时具有红色和绿色。我需要退回所有物品。我不想过滤,我想对项目进行排名

第一次尝试:以下查询返回所有项目。
然而,并不是我的多值字段中的每个单个值都被提升了,而是整个值都被提升了。

ContentTypeId:0x010600C0DEB45360CF4E9EB452AEFE3A238A1CA1* XRANK(cb=100) MyColorManagedProperty:{Page.MyColorColumn} 

问题: 例如,第 4 项将与第 1 项和第 2 项具有相同的排名。100 的提升仅适用于第 3 项(具有红色和绿色)。我需要一个解决方案,其中第 1 项和第 2 项被视为高于第 4 项,因为它们至少包含“红色”。

更新 1:(在以前的版本中,我使用了多值选择字段)Technet:http ://technet.microsoft.com/en-us/library/jj683123(v=office.15).aspx ) - 显然是多选字段不支持。因此,与此同时,我切换到了多值分类领域。

ContentTypeId:0x010600C0DEB45360CF4E9EB452AEFE3A238A1CA1* XRANK(cb=10) {|owstaxIdRsColor:{Page.RsColor}}

我得到的是:XRANK(Property or Property or Property or ...)
我想要的是:XRANK Property or XRANK Property or XRANK Property or ...`

更新 2: 正确放置支架可以创造奇迹 - 所以我想。我最近试图重现预期的结果,但惨遭失败。我仍在寻找解决方案。下面的方法不起作用

ContentTypeId:0x010600C0DEB45360CF4E9EB452AEFE3A238A1CA1* XRANK(cb=100) (owstaxIdRsColor:{|{Page.RsColor}})

The result is: ContentTypeId:0x010600C0DEB45360CF4E9EB452AEFE3A238A1CA1* XRANK(cb=100) (owstaxIdRsColor:((#0655a6c23-6f73-43d4-b451-d01e0400717f) OR (#0de2d6451-8825-4c4f-9b02-0b22089b6540))) which basically ranks every item以其“默认”值(5.xxx)。

4

0 回答 0