使用 View 在 Azure 搜索服务中创建集合

Create Collection in Azure Search Service Using View

我正在尝试使用导入数据工具创建索引。

数据源来自 azure sql 的视图。

SELECT
b.Name,
b.ID
(SELECT
'[' + STUFF((
    SELECT
        ',{"name":"' + p.Name + '"}'
    FROM Product p WHERE p.Brand = b.ID
    FOR XML PATH (''), TYPE)
.value('.', 'nvarchar(max)'), 1, 1, '') + ']') AS TAry, 
b.IsDelete,
b.ModifyDatetime
from Brand b

带有 TAry 的列将 return JSon 格式字符串如下: [{"name":"Test1"},{"name":"Test2"}]

在带有字段 TAry 的索引器属性中选择类型 Collection(Edm.String)

创建后,return错误,提示如下:

"The data field 'TAry' has an invalid value. The expected type was 'Collection(Edm.String)'."

感谢您的回复。

我试过这种格式:[Test1],"Test2"]还是不行。

为此,您需要使用 Azure Search REST API 通过 jsonArrayToStringCollection 函数设置字段映射。查看 this article 了解详细说明。