MongoDB中的聚合管道以获取JSON结果

问题描述

我在MongoDB中有一个名为 results 的集合,我在其中插入了这样的文档:

{
    "message_id" : 36
    "field" : "DE5"
}

此外,集合 messages 具有不同的文档,这些文档定义了不同的消息模式,如下所示:

"message": {
    "id": 36,"record": {
        "field": [
            {
                "class": "BigEndianInteger","id": "StopOrGo","size": "1"
            },{
                "class": "BigEndianInteger","id": "IsObstacle","id": "IsRed","id": "IsBlue","id": "IsGreen","id": "AlarmStatus","id": "ClearLine","id": "Break","id": "WindProtectionActive","id": "ClearFlag","id": "JumperOn","id": "ModeTR","size": "1"
            }
        ]
    }
}

我的目标是修改 results 集合中的文档,根据 messages 集合的大小,将十六进制字段 DE5 解码为不同的字段ID。

对于BigEndian,0xDE5的输出应如下所示:110111100101

{
    message_id : 36
    field : "DE5"
    decode : [
        {
            "class": "BigEndianInteger","size": "1","value" : 1
        },{
            "class": "BigEndianInteger","value" : 0
        },"value" : 1
        }
    ]
}

您是否知道MongoDB中的任何过滤构造,以根据 id size 的另一个集合(如)中的文档解码此二进制 field >消息? 如果您认为MongoDB对于此任务没有用,我也将不胜感激。

非常感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)