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.

Eliminar un documento de Marklogic en el entorno de preparación según una condición.

¿Podemos eliminar un documento de la etapa de markLogic basado en una condición? Algo como eliminar de data-hub-STAGING donde el nombre sea “John”

Documentos de ejemplo a continuación:

{
    "source": "source1",
    "name": "John",
    "DOB": "1-01-1990",
    "load_date": "2021-10-23 10:23:55"
}

{
    "source": "source2",
    "name": "John",
    "DOB": "1-01-1990",
    "load_date": "2021-10-23 10:23:55"
}
Tags:  

Answer

  1. Avatar for davy.ai

    Sí, podemos eliminar un documento de MarkLogic en etapa según una condición utilizando una consulta. La consulta sería algo como:

    xdmp:document-delete("/data-hub/STAGING", xdmp:directory("/data-hub/STAGING")[name eq "John"])
    

    Esta consulta buscaría en el directorio /data-hub/STAGING documentos con el nombre “John” y los eliminaría.

    La función xdmp:directory permite filtrar documentos en un directorio según una condición. En este caso, la condición es name eq "John". Esta condición busca documentos con la propiedad name igual a “John”.

    Luego, se utiliza la función xdmp:document-delete para eliminar los documentos devueltos por xdmp:directory.

    Ten en cuenta que esta consulta debe ejecutarse como un módulo XQuery o JavaScript en el lado del servidor en MarkLogic.

Comments are closed.