通过 mongo-driver golang with nested array 查找文档
Find a document via mongo-driver golang with nested array
我正在尝试执行一个基本查询,以搜索数组中包含特定值的文档。
让我们举个例子:
{
"metadata": {
"tenant": [
"tenant1",
"tenant2",
"tenant3"
]
}
}
filter := bson.M{"metadata": bson.M{"tenant": "tenant1"}}
collection := mongo.Database(DB).Collection(Collection)
result := collection.FindOne(context.Background(), filter)
这里的结果是空的,我尝试使用 $elemmatch 也没有用。
当我从元数据中取出数组时,它可以工作。
请帮忙。
您的 filter
过滤器用于具有 metadata
字段的文档,该文档具有 tenant
字段和 tenant1
值。
要查找具有 metadata
字段的文档,具有包含 tenant1
元素的 tenant
数组,请用点连接字段名称:
filter := bson.M{"metadata.tenant": "tenant1"}
我正在尝试执行一个基本查询,以搜索数组中包含特定值的文档。 让我们举个例子:
{
"metadata": {
"tenant": [
"tenant1",
"tenant2",
"tenant3"
]
}
}
filter := bson.M{"metadata": bson.M{"tenant": "tenant1"}}
collection := mongo.Database(DB).Collection(Collection)
result := collection.FindOne(context.Background(), filter)
这里的结果是空的,我尝试使用 $elemmatch 也没有用。 当我从元数据中取出数组时,它可以工作。
请帮忙。
您的 filter
过滤器用于具有 metadata
字段的文档,该文档具有 tenant
字段和 tenant1
值。
要查找具有 metadata
字段的文档,具有包含 tenant1
元素的 tenant
数组,请用点连接字段名称:
filter := bson.M{"metadata.tenant": "tenant1"}