Azure认知搜索学习之使用Portal快速入门 - 使用搜索浏览器查询
分类: Azure搜索 ◆ 标签: #Azure #Search #认知搜索 ◆ 发布于: 2023-06-12 21:02:22

Search Explorer
是Azure Portal
中的一种内置查询工具,用于针对 Azure 认知搜索中的搜索索引运行查询。 利用此工具,可以轻松学习查询语法,测试查询或筛选器表达式,或者通过验证索引中是否存在较新的内容来确认数据刷新。
本快速入门使用现有索引来演示搜索浏览器。
开始之前,必须具备以下先决条件:
- 具有活动订阅的 Azure 帐户。 免费创建帐户。
- Azure 认知搜索服务。 创建服务或在当前订阅下查找现有服务。 可以使用本快速入门的免费服务。
- 本快速入门使用了 realestate-us-sample-index。 请按照我们第一篇来创建该索引
启动搜索资源管理器
- 在 Azure 门户中,从仪表板打开搜索概述页,或者查找你的服务。
- 从命令栏打开“搜索浏览器”:
或在打开的索引上使用嵌入的“搜索浏览器”选项卡:
未指定查询
在搜索浏览器中,请求是使用搜索 REST API 表述的,响应以详细的 JSON 文档的形式返回。
若要首先查看内容,请执行空搜索,方法是单击“搜索”,不提供搜索词。 空搜索作为第一个查询十分有用,因为它返回全部文档,以便查看文档组合。 空搜索没有搜索级别,按任意顺序返回文档(所有文档都为 "@search.score": 1)。 默认情况下,搜索请求中会返回 50 个文档。
空搜索的等效语法是 *
或 search=*
。
search=*
结果
自由文本搜索
自由格式查询(带或不带运算符)可用于模拟从自定义应用发送到 Azure 认知搜索的用户定义查询。 只会扫描在索引定义中将其属性设置为“可搜索”的那些字段来查找匹配项。
请注意,如果提供了搜索条件(例如查询词或表达式),则会应用搜索排名。 以下示例对自定义文本搜索进行了说明。
Seattle apartment "Lake Washington" miele OR thermador appliance
结果
可以使用 Ctrl-F 在结果中搜索感兴趣的特定字词。
匹配文档计数
添加 $count=true
以获取在索引中找到的匹配项数。 在空搜索中,计数是指索引中的文档总数。 在限定搜索中,计数是与查询输入匹配的文档数。 回想一下,服务默认返回前 50 个匹配项,因此索引中的匹配项可能比结果中包含的匹配项更多。
$count=true
结果
限制搜索结果中的字段
添加 $select
,将结果限制为显式命名的字段,以便在“搜索浏览器”中获得可读性更强的输出。 若要保留搜索字符串$count=true
,请在参数前面加上 &
。
search=seattle condo&$select=listingId,beds,baths,description,street,city,price&$count=true
结果
返回下一批结果
Azure 认知搜索根据搜索排名返回排名前 50 的匹配项。 若要获取下一组匹配的文档,请附加“ParseError: KaTeX parse error: Expected 'EOF', got '&' at position 9: top=100,&̲skip=50”,这会将结果集增加为 100 个文档(默认值为 50,最大值为 1000)并跳过前 50 个文档。 可以通过查看文档键 (listingID) 来识别文档。
前面提到,需要提供搜索条件,例如查询词或表达式,以便获得排列好的结果。 请注意,搜索分数随搜索结果中搜索的深入而降低。
search=seattle condo&$select=listingId,beds,baths,description,street,city,price&$count=true&$top=100&$skip=50
结果
筛选表达式(大于、小于、等于)
如果要指定精确条件搜索,而不是进行自定义文本搜索,请使用 $filter
参数。 必须在索引中将此字段的属性设置为“可筛选”。 此示例搜索大于 3 间的卧室:
search=seattle condo&$filter=beds gt 3&$count=true
结果
Order-by 表达式
添加 $orderby
,按搜索分数之外的其他字段对结果排序。 必须在索引中将此字段的属性设置为“可排序”。 可用于测试此功能的示例表达式如下所示:
search=seattle condo&$select=listingId,beds,price&$filter=beds gt 3&$count=true&$orderby=price asc
结果
$filter
和$orderby
表达式都是 OData
构造 。