Важното е, че $or
изисква масив, който е bson.A
. Също така $and
е по подразбиране, не е необходимо да го посочвате.
Вашият филтър може да се дефинира по следния начин:
filter := bson.D{
{"p", 10},
{"$or", bson.A{
bson.D{{"s", 30}},
bson.D{{"a", 10}},
}},
}
Можете също да използвате това:
filter = bson.D{
{"p", 10},
{"$or", bson.A{
bson.M{"s": 30},
bson.M{"a": 10},
}},
}
Или това:
filter := bson.M{
"p": 10,
"$or": bson.A{
bson.M{"s": 30},
bson.M{"a": 10},
},
}