es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obtener solo los documentos JSON utilizando Marklogic Node.js query builder

En mi base de datos de Marklogic tengo diferentes formatos de documentos. Y me gustaría obtener solo los documentos JSON de la colección.
Tengo una declaración de generador de consultas como esta:

const documents = await dbClient.documents
.query(
qb
.where(qb.collection('myCollection'))
.slice(0, 10)
)
.result();

¿Es posible utilizar algún filtro aquí para obtener solo documentos JSON?

Tags:  

Answer

  1. Avatar for davy.ai

    Sí, es posible filtrar los documentos en la base de datos de MarkLogic utilizando la declaración del constructor de consultas para obtener solo documentos JSON de una colección. Puede agregar una restricción al constructor de consultas para filtrar solo documentos JSON usando el método value para especificar el formato del documento. La declaración modificada del constructor de consultas se vería así:

    const documents = await dbClient.documents
        .query(
            qb
                .where(
                    qb.and(
                        qb.collection('myCollection'),
                        qb.value(qb.byExample({}), qb.jsonProperty())
                    )
                )
                .slice(0, 10)
        )
        .result();
    

    En esta declaración, el método qb.value() se utiliza para indicar que solo se deben devolver documentos con un formato JSON. El método qb.jsonProperty() se utiliza para especificar que el valor que se busca es una propiedad JSON, y el objeto vacío {} se utiliza para hacer coincidir con cualquier nombre de propiedad.

    Esto filtrará los documentos en la colección myCollection para que solo se devuelvan documentos JSON y devolverá los primeros 10 documentos en el conjunto de resultados.

Comments are closed.