javascript - 在 MarkLogic 中,如何仅使用键在 JSON 文档中进行搜索?

标签 javascript json marklogic

我的数据库中有一堆 JSON 文档。我需要通过搜索其中存在特定字段的文档来对一些文档执行删除操作{key only}。我可以将什么查询添加到我的代码中,以便它找到包含该字段的所有文档?我将使用它们来获取它们的值(整数),将它们放入一个数组中,然后一个一个地使用它们。

最佳答案

扩展一下 George Bailey 提供的链接,您可能需要使用 cts.uris()而不是 cts.search() 因为 xdmp.documentDelete() 采用 uri 字符串而不是文档:

const uris = cts.uris(
    null, 
    ['score-zero', 'unchecked'], 
    cts.jsonPropertyScopeQuery('theKey', cts.trueQuery())
    );
xdmp.documentDelete(uris);

如果是大量文档,您可能需要在调用 cts.uris() 时指定起始值和限制,以便在多次传递中删除不同的文档切片。

希望对你有帮助,

关于javascript - 在 MarkLogic 中,如何仅使用键在 JSON 文档中进行搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55901581/

相关文章:

ruby-on-rails - 如何使用 ember-data 获取/检索我的 REST 数据?

javascript - 在 RegExp 中使用带有转义字符的变量

java - 如何在 Web 应用程序项目的 Controller 中将字符串作为 JSON 对象返回

php - 用 setInterval 运行一堆 ajax 好不好?超过 5 个 ajax 正在运行

javascript - MarkLogic 8 - 将大型结果集流式传输到文件 - JavaScript - Node.js 客户端 API

java - 使用 JNDI 的 Marklogic XCC ContentSource

javascript true 和 true 在 if 语句中返回 false?

javascript - 有没有更好的方法从 webview 返回到 Cordova/Phonegap 应用程序?

javascript对象错误

node.js - 如何在node.js中使用marklogic查询结果