第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用mongodb中的golang從json數(shù)組中獲取嵌套值

如何使用mongodb中的golang從json數(shù)組中獲取嵌套值

Go
蕪湖不蕪 2021-09-13 20:04:01
我有下面的json我想Data從 Requirement 數(shù)組中提取基于Id. 如果"Data" = "String123"它應(yīng)該將“數(shù)據(jù)”顯示為 ["WED"]。我試過(guò)這個(gè)代碼但無(wú)論Id.
查看完整描述

2 回答

?
蝴蝶刀刀

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超8個(gè)贊

如果我猜對(duì)了,您在“clOfferMaster”集合中有一個(gè)記錄,并且您正在嘗試從嵌套集合“Eligibility”中獲取數(shù)據(jù)。這可能不是處理數(shù)據(jù)的典型方式。


如果您按如下方式重組數(shù)據(jù)會(huì)怎樣:


    {

        "ComponentId" : "SessionDayCheck",

        "ConfigData" : [ 

            "WED"

        ]

    }, 

    {

        "ComponentId" : "TransDayCheck",

        "ConfigData" : [ 

            "WED", 

            "THU"

        ]

    }, 

    {

        "ComponentId" : "SessionTransCheck",

        "ConfigData" : ""

    }

]

在這種情況下,您可以執(zhí)行以下查詢


c := session.DB("offerengine2").C("clOfferMaster")


var result struct {

    ConfigData []string "ConfigData"

}

err = c.Find(bson.M{"ComponentId": "SessionDayCheck"}).One(&result)

if err != nil {

    log.Fatal(err)

}


fmt.Println("Result:", result)

// Result: {[WED]} 


查看完整回答
反對(duì) 回復(fù) 2021-09-13
?
一只斗牛犬

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊

查詢的結(jié)果是文檔的集合。如果您將組件集合存儲(chǔ)在一個(gè)文檔中,即使您在查詢中使用了組件字段,如果與過(guò)濾器匹配,結(jié)果仍將返回整個(gè)文檔。

MongoDB 支持選擇您想要或不想要的屬性,但您不能根據(jù)它們的屬性排除數(shù)組元素。
請(qǐng)注意,MongoDB 僅支持返回?cái)?shù)組的一部分($slice (projection)),但這是基于索引的,并不是您真正想要的。

您必須手動(dòng)檢查返回文檔 ( Eligibility) 的組件并搜索所需的組件?;蛘卟榭次臋n的內(nèi)容,您應(yīng)該將其拆分以將每個(gè)組件存儲(chǔ)為單獨(dú)的文檔,然后您可以過(guò)濾它們并單獨(dú)檢索它們。


查看完整回答
反對(duì) 回復(fù) 2021-09-13
  • 2 回答
  • 0 關(guān)注
  • 333 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)