gpt4 book ai didi

CouchDB 按文档字段内连接?

转载 作者:行者123 更新时间:2023-12-02 17:12:36 25 4
gpt4 key购买 nike

我有一个问题,我有两种文档,其中一种是这样的:

{
"type": "PageType",
"filename": "demo"
"content": "zzz"
}

还有一个这样的:

{
"type": "PageCommentType",
"refFilename": "demo"
"content": "some comment content"
}

我需要发出包含 .comments 字段的文档,该字段是我在 PageType 文档文件名 == PageCommentType 文档 refFilename 字段的条件下链接的 PageCommentType 文档数组。

{
"filename": "demo",
"comments": [{}, {}, {}]
}

有人对如何实现有任何建议吗?

谢谢。

最佳答案

您需要查看整理。在同一 View 中发出两者,使用文件名作为键和类型标识符来区分注释和原始内容:

function(doc) {
if (doc.type == "PageType") emit([doc.filename,0],doc.content);
if (doc.type == "PageCommentType") emit[doc.refFilename,1],doc.content);
}

查找文档 demo 及其注释时,使用 startkey=["demo",0]endkey=["demo"运行查询,1]:您将获得页面内容以及所有评论。

一旦您获得了所需的所有数据,但其格式不正确,那么您就快完成了。只需编写一个 _list 函数来读取所有行并输出具有您需要的结构/模式的最终 JSON 文档。

关于CouchDB 按文档字段内连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4787711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com