MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB em Go (golang) com mgo:como usar operadores lógicos para consultar?


Sua consulta mongo pode ser traduzida para o seguinte:
pipeline := bson.D{
    {"key1", 1},
    {"$or", []interface{}{
        bson.D{{"key2", 2}},
        bson.D{{"key3", 2}},
    }},
}

A consulta deve ser equivalente ao seguinte no console do mongo:
db.mycollection.find({"key1" : 1, "$or" : [{"key2" : 2}, {"key3" : 2}]})

Se preferir usar mapas não ordenados, bson.M , ficaria assim:
pipeline := bson.M{
    "key1": 1,
    "$or": []interface{}{
        bson.M{"key2": 2},
        bson.M{"key3": 2},
    },
}