[亿信BI4.7] 浮动中top问题

5348
25

张瑞阿 初学数据Lv2

发表于2023-1-3 09:53

悬赏1

未解决

楼主
各位大佬,求救、设置浮动分组后,选择top3,查看执行sql发现是count()进行排序,取前三;有办法设置成sum()嘛?

最近看过此主题的会员

407842561

养蚯蚓吃沙漠

chestnut

一点一点

bbs

yangqh

ESENSOFT官方技术支持

社区账号

zzww

Bryce

25个回答

只看楼主

张瑞阿 初学数据Lv2

发表于2023-1-3 17:50

只看该作者

取消 关注该作者的回复

22#

张瑞阿 发表于 2023-1-3 17:50
是的、就一直点计算刷新页面,有时候两条有时候三条。这条sql从数据库跑是三条 ...

从数据库跑就有时候两条有时候三条

一点一点 数据老手Lv5

发表于2023-1-3 18:02

只看该作者

取消 关注该作者的回复

23#

张瑞阿 发表于 2023-1-3 17:50
从数据库跑就有时候两条有时候三条

数据库里的数据是动态的?

张瑞阿 初学数据Lv2

发表于2023-1-4 09:08

只看该作者

取消 关注该作者的回复

24#

一点一点 发表于 2023-1-3 18:02
数据库里的数据是动态的?

不是。就很神奇。生成的sql是这样的,为啥要关联两遍呢?SELECT  *
FROM    (
            SELECT  a.C3 AS C3
                    ,a.B3 AS B3
                    ,COUNT(b.C3) AS C3_sortn
            FROM    (
                        SELECT  SUM(a.amt) AS C3
                                ,a.cust_nm AS B3
                        FROM    a_corp_cust_in_acct_track_camp a
                        WHERE   (a.data_date = '20220531')
                        GROUP BY a.cust_nm
                    ) a
                    ,(
                        SELECT  SUM(a.amt) AS C3
                                ,a.cust_nm AS B3
                        FROM    a_corp_cust_in_acct_track_camp a
                        WHERE   (a.data_date = '20220531')
                        GROUP BY a.cust_nm
                    ) b
            WHERE   (a.C3 <= b.C3)
            GROUP BY a.B3
                     ,a.C3
            HAVING  (COUNT(b.C3) <= 3)
            ORDER BY C3_sortn
        ) AS temp_
LIMIT   500000

一点一点 数据老手Lv5

发表于2023-1-4 11:05

只看该作者

取消 关注该作者的回复

25#

张瑞阿 发表于 2023-1-4 09:08
不是。就很神奇。生成的sql是这样的,为啥要关联两遍呢?SELECT  *
FROM    (
            SELECT  a.C3  ...

把表样导出一下,我本地测试下

bbs 超级版主

发表于2023-1-14 16:25

只看该作者

取消 关注该作者的回复

26#

请问这个问题解决了吗

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号