我在 Marklogic 中存储了多个文档,如提及
<testData>
<datatype>
<datatypename>datatypename1</datatypename>
<datatype>datatype1</datatype>
</datatype>
<datavalue>
<code>code1</code>
<value>value1</value>
</datavalue>
<datavalue>
<code>code2</code>
<value>value2</value>
</datavalue>
<datavalue>
<code>code3</code>
<value>value3</value>
</datavalue>
</testData>
要求:我想使用 Maklogic Java API 搜索所有具有相同键但不同值的文档
示例:在上面的 XML<code>
元素中具有多个值,例如code1
,code2
我试过下面的代码
QueryManager manager = client.newQueryManager();
StructuredQueryBuilder queryBuilder = new StructuredQueryBuilder();
StructuredQueryDefinition queryDefinition1 = queryBuilder.value(queryBuilder.element("code"), "code1");
StructuredQueryDefinition queryDefinition2 = queryBuilder.value(queryBuilder.element("code"), "code2");
StructuredQueryDefinition definition = queryBuilder.and(queryDefinition1, queryDefinition2);
SearchHandle searchHandle = new SearchHandle();
manager.search(definition, searchHandle);
在这里,我StructuredQueryDefinition
对每个元素值使用多个,例如queryDefinition1
for code1
,queryDefinition2
因为code2
我不想这样做,而是应该返回一个文档,该文档具有code
元素名称和code1
和code2
作为其值,
StructuredQueryDefinition queryDefinition1 = queryBuilder.value(queryBuilder.element("code"), "code1 AND code2");
请告诉我是否可以使用 Marklogic Java API 并且不为code
元素创建元素范围索引。