Запрос Mongo DB к драйверу Mongo DB для Golang

#mongodb #go #mgo

#mongodb #Вперед #mgo

Вопрос:

Мне нужно сравнить два поля в моей базе данных mongo db, и это запрос для этого

db.characters.find({$expr:{$eq:["$currentLv", "$maxLv"]}})

Как я могу запросить подобный запрос в драйвере mongo db для golang (mgo)

Ответ №1:

Я не буду писать о том, как создать экземпляр подключения к mongodb, если вы не знали, вот ссылка.

И ваш запрос будет примерно таким:

 ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
defer cancel()

filter := bson.M{
    "$expr": bson.M{
        "$eq": []string{"$currentLv", "$maxLv"},
    },
}

_, _ = db.Database("dbname").Collection("collection").Find(ctx, filter, options.Find())