V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐工具
RoboMongo
推荐书目
50 Tips and Tricks for MongoDB Developers
Related Blogs
Snail in a Turtleneck
GeekHub
choice4
V2EX  ›  MongoDB

Mongo 分组查询

  •  
  •   choice4 · 52 天前 via Android · 1219 次点击
    这是一个创建于 52 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Spring data MongoTemplate.
    可以做到按字段值的一部分分组聚合吗?
    类似关系型数据库 sql(postgres)如下:
    SELECT "left"(code,2) As "code",SUM(a) AS a FROM t GROUP BY "left"(code,2).
    手机打的格式可能会乱
    8 条回复    2020-08-03 00:00:29 +08:00
    wongy
        1
    wongy   52 天前
    没有用过,但是我一般是查出来,放到内存里面再分组。
    choice4
        2
    choice4   52 天前 via Android
    @wongy 是全表的,直接放在内存里放不下,现在是先按 code 聚合一遍,再在代码里做 left(code,2)的聚合,看看有没有一步到位的
    z657386160z
        3
    z657386160z   52 天前 via iPhone
    $substr
    JCZ2MkKb5S8ZX9pq
        4
    JCZ2MkKb5S8ZX9pq   52 天前
    说出来你可能不信,我没用过 sql……
    不过 mongo 的话,有 aggregate + $group,具体你可以根据需求搜看看。
    aguesuka
        5
    aguesuka   52 天前   ❤️ 1
    可以 https://docs.mongodb.com/manual/aggregation/
    mongo 除了 join, 其他 sql 能做的都能做
    choice4
        6
    choice4   52 天前 via Android
    @aguesuka thx,map reduce 应该可以做到
    choice4
        8
    choice4   51 天前 via Android
    可以,已经搞出来了。MongoTemplate 在聚合是 Aggregation.project 可以对字段 substring,然后继续向下传递。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3819 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 18ms · UTC 10:13 · PVG 18:13 · LAX 03:13 · JFK 06:13
    ♥ Do have faith in what you're doing.