elasticsearch按照两个字段聚合,其二个字段为日期

发布于 2022-09-11 15:22:39 字数 851 浏览 15 评论 0

两个字段聚合,第一个为普通字段user_id,第二个是日期date,日期需要按照模糊聚合,如日期为2018-02-15,聚合user_id,2018-02的数据 就是mysql的GROUP BY如下形式

group_by(user_id,date_format(date,'%Y-%m')

通过脚本已经实现了两个字段的聚合,但是第二个字段如何实现模糊聚合
"aggs" => [

                "user_group" => [
                    "terms" => [
                        "script" => [
                            "inline" => "doc['user_id.keyword'].value +'-split-'+ doc['date'].value "
                        ]
                    ],
                    "aggs" => [
                        "sum_price" => [
                            "sum" => [
                                "field" => "rmb_amount"
                             ]
                        ]
                    ]
                ]
            ]
            

请大神协助,万分感谢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

柠檬色的秋千 2022-09-18 15:22:39

已解决:

            "aggs" => [
                "signing_company_id" => [
                    "terms" => [
                        "field" => "signing_company_id.keyword"
                    ],
                    "aggs" => [
                        "user_group" => [
                            "terms" => [
                                "field" => "user_id.keyword"
                            ],
                            "aggs" => [
                                "dates" => [
                                    "date_histogram" => [
                                        "field" => "end_date",
                                        "interval" => "year",
                                        "format" => "yyyy-MM-dd HH:mm:ss"
                                     ],
                                    "aggs" => [
                                        "sum_price" => [
                                            "sum" => [
                                                "field" => "rmb_amount"
                                             ]
                                        ]
                                     ]
                                ]
                            ]
                        ]
                    ]
                ]
            ]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文