不使用cts:json属性范围查询获取结果
文档具有以下JSONproperty:不使用cts:json属性范围查询获取结果,json,marklogic-9,Json,Marklogic 9,文档具有以下JSONproperty: "Age":{ "child":true, "adult":true } 我运行了下面的查询,但没有得到任何结果 cts:search(doc(), cts:json-property-scope-query("Age", cts:json-property-scope-query("child","
"Age":{
"child":true,
"adult":true
}
我运行了下面的查询,但没有得到任何结果
cts:search(doc(), cts:json-property-scope-query("Age", cts:json-property-scope-query("child","true")))
另外,存储此json属性以进行快速搜索哪个更好
"Age": ["child","adult"]
或
JSON属性值将作为字符串、数字或布尔类型进行索引 使用并搜索布尔值
true()
,而不是字符串“true”
您是否尝试使用值查询作为内部查询?如果您的数据是布尔值,您可能还想尝试使用布尔值
true
,如果您的数据是字符串,则尝试使用“true”
。是的,它与cts:search(doc(),cts:json属性范围查询(“Age”,cts:json属性值查询(“child”,fn:true())一起工作。您还可以告诉我,哪种方法更适合将这些数据存储在带有布尔值的数组或嵌套json中。“更好”取决于我所说的用例。数组更密集,但嵌套的布尔属性提供了更高的表达能力。嵌套布尔使进行否定搜索更容易(elder=false)
"Age":{
"child":true,
"adult":true,
"elder":false
}
cts:search(doc(),
cts:json-property-scope-query("Age",
cts:json-property-value-query("child", true())))