-1

我正在使用 SharePoint Search API 并引用链接SharePoint Search REST API overview。我想使用属性运算符。请参阅链接关键字查询语言 (KQL) 语法参考中的“属性限制中支持的属性运算符”部分

我正在形成查询http://server/_api/search/query?querytext='AmountCurrency > 10.50'&selectproperties='Title,Author'

相似地http://server/_api/search/query?querytext='AmountNumber < 20.50'&selectproperties='Title,Author'

在上述查询中,AmountCurrency 和 AmountNumber 分别是 Currency 列和 Number 列的托管属性。但搜索 api 不返回任何行。对我来说 : 和 = 运营商工作正常。如何在搜索 API 中使用大于和小于运算符?

4

2 回答 2

0

确保您使用的字段名称在搜索架构的托管属性中定义。

或者,您可以使用SharePoint 搜索查询工具构建查询。

于 2018-03-16T08:47:58.943 回答
0

知道了。这是由于托管属性类型。以下是我们创建托管属性时可用的类型。

  • 文本
  • 整数
  • 十进制
  • 日期和时间
  • 是/否
  • 双精度浮点数
  • 二进制

为网站栏自动创建托管属性时,默认类型为文本。手动创建托管属性时,只有 Search Service Application 管理员可以选择任何类型。所有其他用户可以选择文本或是/否。

我不是 SSA 管理员。所以我使用了默认未使用的托管属性。请参考https://technet.microsoft.com/en-us/library/jj219667.aspx#Anchor_8。使用RefinableDecimal00并将RefinableDecimal01适当的爬网属性映射到它们。现在一切正常

于 2018-03-18T11:41:48.897 回答