【发布时间】:2019-12-18 12:18:06
【问题描述】:
我有一个如下文件结构
[
{
"id": "1",
"author": "John Smith",
"partNames": [
"PART.5",
"PART.10",
"PART.15",
"PART.30",
"PART.31"
]
...
},
{
"id": "2",
"author": "Mike Smith",
"partNames": [
"PART.4",
"PART.6",
"PART.17",
"PART.18",
"PART.20"
]
...
}
]
我试图通过字段作者和partnames来实现对用户的搜索,因此用户可以像
一样查询SELECT * FROM c WHERE CONTAINS(c.author, 'John')
和用户将进入结果id=1文档,因为作者的名称是John。
下一步是允许用户按零件询问文档,例如我想收到一个文件,其中PART.4存在,因此查询将是
SELECT * FROM c WHERE ARRAY_CONTAINS(c.partNames, 'PART.4', true)
并返回文件id=2。
更进一步的我想制作查询,允许用户键入PART.1,他将收到文件id=1和id=2,因为两者都有零件以PART.1
所以有没有办法实现它?
【问题讨论】:
标签: sql azure-cosmosdb