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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

MongoDB 管道中的多個頂級聚合查詢

MongoDB 管道中的多個頂級聚合查詢

Go
楊__羊羊 2022-06-21 16:32:58
我有以下查詢:match := bson.D{{"$match", bson.D{{"venue", venueID}}}}group := bson.D{{"$lookup", bson.M{    "from":         "labels",    "localField":   "label_ids",    "foreignField": "_id",    "as":           "labels",}}, {"$graphLookup", bson.M{    "from":             "menus",    "startWith":        "$child_ids",    "connectFromField": "child_ids",    "connectToField":   "_id",    "as":               "children",    "maxDepth":         5,    "depthField":       "level",}}}cur, err := m.collection.Aggregate(ctx, mongo.Pipeline{group, match})我有兩個關(guān)系字段,其中一個是圖形結(jié)構(gòu)(菜單),每個父元素都有一個每個子元素的 ID 數(shù)組。第二個字段,標(biāo)簽,只是一個一對多的查詢。標(biāo)簽和菜單應(yīng)該是可重復(fù)使用的,因此不會嵌入到單個父實體中。上面概述的查詢對我來說很有意義,但是我收到以下錯誤:A pipeline stage specification object must contain exactly one field.謝謝!
查看完整描述

1 回答

?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗 獲得超6個贊

MongoDB 管道中的每個元素都必須是單個階段,例如$match,$group等。


您的group元素包含 2 個階段:$lookup和$graphLookup.


拆分它們并單獨列出它們:


match := bson.D{{"$match", bson.D{{"venue", venueID}}}}

group := bson.D{{"$lookup", bson.M{

    "from":         "labels",

    "localField":   "label_ids",

    "foreignField": "_id",

    "as":           "labels",

}}}

graphLookup := bson.D{{"$graphLookup", bson.M{

    "from":             "menus",

    "startWith":        "$child_ids",

    "connectFromField": "child_ids",

    "connectToField":   "_id",

    "as":               "children",

    "maxDepth":         5,

    "depthField":       "level",

}}}


cur, err := m.collection.Aggregate(ctx, mongo.Pipeline{group, graphLookup, match})


查看完整回答
反對 回復(fù) 2022-06-21
  • 1 回答
  • 0 關(guān)注
  • 186 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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