Я хочу преобразовать этот массив объекта
[{ category:"AAA" },{ category:"BBB" },{ category: "CCC" }]
В этот ["AAA","BBB","CCC"]. Я не хочу фильтровать или использовать какую-либо функцию массива в бэкэнде, но из самой mongoDB.
["AAA","BBB","CCC"]
db.collection.distinct('category')
должен дать вам массив уникальных значений для этого поля.
$ map отображает ключи объекта в массиве в массив значений ключей. Затем используйте $ addFields для преобразования вывода
arr = [{ category:"AAA" },{ category:"BBB" },{ category: "CCC" }]; db.collection.aggregate([ { "$addFields": { "exclude": { "$map": { "input": "$arr", "as": "el", "in": "$$el.category" } } } } ])