我有几组文档如下:
[
{
"Name": "Document1",
"Properties": {
"Property1": [
"Value1",
"Value2",
"Value3",
]
},
"Tags": null
},
{
"Name": "Document2",
"Properties": {
"Property1": [
"Value1",
]
},
"Tags": null
},
{
"Name": "Document3",
"Properties": {
"Property1": [
"Value1",
"Value2",
]
"Property2": [
"Value1",
]
},
"Tags": null
}
]
我需要查询属性节点中Property1
数组中有多于1个项目的任何文档。在上面的示例中,我希望只返回Document1
和Document3
。我花了很多时间尝试使用Array_Contains语法,但一直在做空。以下是我最近的尝试:
SELECT * FROM Docs d WHERE ARRAY_LENGTH([d.Properties, 'Property1']) > 1
但是根据我的语法,我会收回所有文件。
答案 0 :(得分:17)
您需要以下查询:
export FORMS_PATH=export FORMS_PATH=/apps/apps/frmcompile/cmteam/hla
for FILE in `ls $FORMS_PATH/*.fmx`; do
if exist "$FILE/*.fmx";
then
rm $FILE/err
fi
done
请注意,DocumentDB的语法适用于分层嵌套数据,您可以像编程语言一样访问d.Properties.Property1,d.Properties.Property1 [0]等属性。