Liczy się to, że $or
wymaga tablicy, którą jest bson.A
. Również $and
jest ustawieniem domyślnym, nie musisz tego wskazywać.
Twój filtr można zdefiniować w następujący sposób:
filter := bson.D{
{"p", 10},
{"$or", bson.A{
bson.D{{"s", 30}},
bson.D{{"a", 10}},
}},
}
Możesz również użyć tego:
filter = bson.D{
{"p", 10},
{"$or", bson.A{
bson.M{"s": 30},
bson.M{"a": 10},
}},
}
Albo to:
filter := bson.M{
"p": 10,
"$or": bson.A{
bson.M{"s": 30},
bson.M{"a": 10},
},
}