1

SharePoint Search Server Express 2010,为什么从 Scope() 返回排名始终默认 (100000000)

我需要知道在 Search Server Express 中的配置更改等方面我需要采取哪些不同的措施来解决此排名问题。

我已经使用Search Server Express 2010抓取了大量文件,当我使用 QueryText 从 Scope 中选择排名时(对于给定的搜索词),我总是为所有返回的项目获得相同的排名100000000

因此,按等级排序没有区别。我需要排名来反映每个文件中特定术语的出现次数。当 SSE 2010 安装在 Windows Server 2008 R2 上时,排名曾经变化(并且是正确的),但对于 Windows Server 2016,排名始终为 100000000。

例如,如果文件 A 有 1 次“油”,文件 B 有 3 次“油”,文件 C 有 4 次“油”,则从下面的选择返回的当前订单,与 order by,是: 文件 A,文件 B,文件 C (因为这是文件被爬取的顺序,不幸的是每个文件返回每个文件的 100000000 的排名)。我需要返回的顺序,顺序是: 文件C,文件B,文件A (文件C的等级比B大,B的等级比A大,所以按等级排序可以正确地订购东西)。

我调用 Search Server Express 2010 (_vti_bin/search.asmx) 附带的内置 SOAP 服务的方法 Query 并传递以下内容:

<QueryPacket><Query><QueryId /><OriginatorId /><Context>
<QueryText type='MSSQLFT' language='" + language + "'>
   SELECT rank, Filename, path, description FROM SCOPE()
   where (path like 'file://" + RepositoryFiles + "/%.xml')
    and (contains(All, '"oil*"')) 
    order by rank desc
 </QueryText>
 </Context>
 <EnableStemming>true</EnableStemming>
</Query></QueryPacket>;

我非常感谢能够解决这个问题的洞察力。

4

0 回答 0