账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    如何查询Mongodb中的json字符串
    33
    0

    项目背景是和三方平台做数据下发,为保证数据可追朔,将三方平台下方的报文(Json格式字符串)存储在Message.bizData节点下,样例如下。现在希望查询transOrderCode= 91011081818的数据,我应该如何编写查询语句?我尝试过find({"Message.bizData.transOrderCode":"91011081818"}),然而并不起作用。我该先把报文反序列化成objecjt,然后再存入bizData吗?

    {
        "_id" : ObjectId("5be28b1167cdcb184310c75e"),
        "name" : "Best_mmg.Controllers.OrderController",
        "type" : "request",
        "datetime" : ISODate("2018-11-07T06:49:53.463Z"),
        "Message" : {
            "sign" : "bb3e894d17e069933f6dad7e19ced77f",
            "serviceType" : "KY_INSTALL_ORDER_CREATE_NOTIFY",
            "partnerID" : "SU_JIA",
            "bizData" : '{
        "partnerCode": "SU_JIA",
        "cpCode": "BESTQJT",
        "transOrderCode": "91011081818",
        "acceptPerson": "田铉政",
        "acceptPhone": "13560259167",
        "acceptProvince": "广东省",
        "acceptCity": "广州市",
        "acceptArea": "白云区",
        "acceptAddress": "金碧新城42栋307房",
        "acceptPostCode": null,
        "pickupSiteCode": "5100803",
        "pickupSiteName": "广州南送装点",
        "pickupSiteProvince": "广东省",
        "pickupSiteCity": "广州市",
        "pickupSiteArea": "白云区",
        "pickupSiteAddress": "广东省佛山市顺德区成业六路广辉玫瑰金厂(前进200米)百世快运陈村枢纽分拨",
        "pickupSitePerson": "何嘉威",
        "pickupSitePhone": "13925700028",
        "serviceType": "DISP_INSTALL",
        "packageAmount": "4",
        "packageCubic": "1.65",
        "packageWeight": "330.0",
        "isElevator": "false",
        "floor": "0",
        "salesPlatform": null,
        "salesOrder": null,
        "salesName": null,
        "salesPhone": null,
        "remark": null,
        "itemList": {
            "itemDetailList": [{
                    "itemSKU": null,
                    "itemCode": "01011010001",
                    "itemName": "气压高箱类实木床",
                    "amount": "1",
                    "checkerID": null,
                    "checkerName": "喵师傅",
                    "checkCode": "246438497499365546",
                    "remark": null,
                    "imgUrl": null
                }
    
            ]
        },
        "addServiceList": {
            "addServiceDetailList": [
    
            ]
        }
    }'
        }
    }
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 岚焰 普通会员 1楼

      在MongoDB中,你可以使用$json操作符来查询json字符串。例如,如果你想查询包含"key1=value1"和"key2=value2"的文档,你可以使用以下查询:

      javascript db.collection.find({"key1": "value1", "key2": "value2"})

      这将返回包含"key1=value1"和"key2=value2"的文档。如果你想要查询所有包含这些键的文档,你可以使用$all操作符:

      javascript db.collection.find({"key1": "value1", "key2": "value2"})

      这将返回所有包含"key1=value1"和"key2=value2"的文档。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部