gpt4 book ai didi

mongodb - 如何从 mongodb 获取唯一记录?

转载 作者:IT王子 更新时间:2023-10-29 01:46:05 24 4
gpt4 key购买 nike

我有一个名为“myplace”的集合。它具有以下字段:地名、纬度、经度、城市、国家/地区。

我想要所有以字母“A”开头的城市。我尝试了以下方法:

type Place struct{
City string `bson: "City"`
}

从数据库中获取结果:

var city_name []Place
err = coll.Find(bson.M{"city": bson.M{"$regex":"^a", "$options":"si"}}).All(&city_name)

它正在获取所有结果。问题在于某些“myplace”文档具有相同的城市,因此它会返回重复的城市名称。

假设我有 5 个 myplaces,其中 3 个城市名称为“巴吞鲁日”,其余城市名称为“高知特里凡得琅”。当我尝试获取以“B”开头的城市时,它返回“Baton Rouge”3 次。

如何确保每个 city_name 都是唯一的?

提前致谢

最佳答案

您可以使用 Distinct 方法,在 shell 中它看起来像:

db.foo.distinct( "city",  { "city" : { "$regex" : /^A/i    } }  );

在围棋中:

 var result []string 

err = c.Find( bson.M{"city": bson.M{"$regex":"^a","$options":"si"}} ).Distinct("city", &result)

if err != nil {
log.Fatal(err)
}

fmt.Println( result )

关于mongodb - 如何从 mongodb 获取唯一记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26627101/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com