2

我在 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>元素中具有多个值,例如code1code2

我试过下面的代码

        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对每个元素值使用多个,例如queryDefinition1for code1queryDefinition2因为code2我不想这样做,而是应该返回一个文档,该文档具有code元素名称和code1code2作为其值,

StructuredQueryDefinition queryDefinition1 = queryBuilder.value(queryBuilder.element("code"), "code1 AND code2");

请告诉我是否可以使用 Marklogic Java API 并且不为code元素创建元素范围索引。

4

0 回答 0