我是Microsoft Azure的新手。我想知道如何进行部分文本搜索。我创建了azure cosmosdb,并通过c#将文档添加到数据库中(将文档插入cosmosdb我按照给定链接中的示例:https://docs.microsoft.com/en-us/azure/cosmos-db/sql-api-get-started)创建了azure搜索资源,将数据从cosmosdb导入到azure搜索中创建的索引。我正在获得全文搜索示例的结果。
query:
https://mysource.search.windows.net/indexes/documentdb-index/docs?api-version=2017-11-11&count=true&search=madhu
Result:
{
"@odata.context": "https://mysource.search.windows.net/indexes('documentdb-index')/$metadata#docs(*)",
"value": [
{
"@search.score": 1.4182854,
"id": "Madhu_3",
"LastName": "Madhu",
"Parents": [
"{\"FamilyName\":null,\"FirstName\":\"Madhu\"}",
"{\"FamilyName\":null,\"FirstName\":\"Kalathuru\"}"
],
"Children": [
"{\"FamilyName\":null,\"FirstName\":\"Henriette Thaulow\",\"Gender\":\"female\",\"Grade\":5,\"Pets\":[{\"GivenName\":\"Fluffy\"}]}"
],
"IsRegistered": false,
"rid": "W1wPAPoraMUDAAAAAAAAAA=="
}
]
}
但如果我尝试使用部分文本(如“ma”),则会恢复空值。我经历了天蓝色的微软文件我发现我必须使用自定义分析器进行部分短信,但我不明白如何使用它?谁能建议我如何将自定义分析仪应用到字段中?提前致谢。
您可以通过从每个单词创建多个标记来使用自定义分析器。但是,在这种情况下,使用wildcard search可能会更好。或者,Autocomplete and search suggestions也可用于帮助用户创建最佳查询以查找他们正在寻找的内容。
有两种方法可以做到这一点。