登录
首页 >  Golang >  Go问答

能否对MongoDB查询结果中每个文档的特定字段进行排序?

来源:stackoverflow

时间:2024-03-27 23:54:27 298浏览 收藏

小伙伴们有没有觉得学习Golang很有意思?有意思就对了!今天就给大家带来《能否对MongoDB查询结果中每个文档的特定字段进行排序?》,以下内容将会涉及到,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!

问题内容

我不是在谈论如何对 result 进行排序。我知道!

这是 result 中我想要按特定顺序排序的字段之一。

假设我们有一个由 mgo 查询返回的 result := []a{}

type A struct {
    I  string
    II []B
}
type B struct {
    X  string
    XX int
}

result 中,我希望每个 result[i].ii 按 b.xx 排序

我要问的是,我可以通过 mgo 完成这种排序吗?还是我必须在 result 上循环并对 a.ii 进行自我切片排序?


解决方案


有一种方法可以使用聚合引擎来做到这一点。

  1. $匹配您想要的文档
  2. $投影您想要的字段
  3. $展开切片
  4. $使用 id 和展开值作为排序键对展开切片进行排序
  5. $将已排序的切片元素分组在一起

理论要掌握,实操不能落!以上关于《能否对MongoDB查询结果中每个文档的特定字段进行排序?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>