//根據單位ID,遞歸查詢所有子單位 db.getCollection("Sys_RT_Unit").aggregate([ { $match: { UNIT_CODE: "912bb6b5997646f6b6e88a771e1db3bf" // 這里替換為你要查詢的父單位ID } }, { $graphLookup: { from: "Sys_RT_Unit", startWith: "$UNIT_CODE", connectFromField: "UNIT_CODE", connectToField: "SUPERIOR_UNIT_CODE", as: "hierarchy" } }, { $project: { result: { $concatArrays: ['$hierarchy', []] } } }, { $unwind: "$result" }, { $replaceRoot: { newRoot: "$result" } } ]); //connectFromField和connectToField字段指定了父子關系字段,as字段指定了結果輸出的字段名稱。 //replaceRoot:將子對象轉為根對象 //unwind:將孩子數組的N個對象解開為N條對象(獨立出來) //concatArrays:多個數組合并在同一個數組里
posted on
浙公網安備 33010602011771號