0

我想根据时间范围和 $in 中使用的字段获取文档条目。我可以很容易地使用 mongoose 和 nodejs 来做到这一点,其中 param 是键,params 是一个数组

Data.find( 
         {
          timestamp:
                 {
          $gte: new Date(query.startDate),
          $lt: new Date(query.endDate)
               }
         }
       ).where(`${param}`).in(params);

下面是我使用 go 和 bson 对 bson 的尝试。我发现如何构建查询很困难

aliases := []string {"000","111"}
query := bson.M{
        "datetime": bson.M{
            "$gt": startDate,
            "$lt": endDate,
        },
     "$where":bson.M{"device_alias":bson.M{"$in": aliases}}
        
    }

请有人帮我解决这个问题

4

1 回答 1

0

您的尝试不是有效的 mongodb 查询。试试这个:

query := bson.M{
        "datetime": bson.M{
            "$gt": startDate,
            "$lt": endDate,
        },
        "device_alias":bson.M{"$in": aliases},
    }
于 2021-10-09T17:32:24.723 回答