[ABI 5.1] 交叉汇总结合和数据库结果对不上

23623
19

小灰灰1 数据达人Lv4

发表于2020-7-14 15:14

悬赏10

已解决

楼主
本帖最后由 小灰灰1 于 2020-7-14 17:30 编辑

和数据库那边算出来的结果对不上 这个是设计页面
是哪里的细节没注意到吗?指标需要额外搞条件还是啥?

最近看过此主题的会员

xtbest

bbs

yangqh

xxxl

lii_chen1234

wut

liuzhp

混乱七星天

最佳答案

xxxl

发表于2020-7-14 15:14

只看该作者

取消 关注该作者的回复

本帖最后由 xxxl 于 2020-7-16 15:59 编辑
小灰灰1 发表于 2020-7-14 18:24
那这个方案没啥意义呀,这样搞下去的话,就相当于自己把不同库里的表搞到一张大表里了
那其实还是单元格 ...

可行的方法只有这种,就是在第一个主题表中添加city字段然后再做关联关系,因为一个主题表字段无法浮动另外一个主题表的字段。
19个回答

只看楼主

xxxl 数据领袖Lv6

发表于2020-7-14 15:19

只看该作者

取消 关注该作者的回复

沙发

您表样有没有设置什么过滤条件之类的呢,您可以在计算完之后点击详细信息

查看生成的sql语句是否符合您数据库查询的语句

小灰灰1 数据达人Lv4

发表于2020-7-14 15:24

只看该作者

取消 关注该作者的回复

板凳

xxxl 发表于 2020-7-14 15:19
您表样有没有设置什么过滤条件之类的呢,您可以在计算完之后点击详细信息查看生成的sql语句是否符合您数据 ...

2020-07-14 15:08:29 当前连接池为【mysql】,执行SQL:
select a.C4,a.C2,a.C1,a.B4,a.A4,a.mc_B42,b.C4,b.B4,b.A4,b.mc_B42,c.C4,c.C2,c.C1
from (
select sum(a.num*a.price) as C4,a.city as C2,a.area as C1,a.employeeid as B4,c.job as A4,max(b.EMPNAME) as mc_B42
from dingdan a
inner join xiaoshouyuan c
on (c.employeeID = a.employeeid)
left join employee b
on (a.employeeid=b.EMPID)
group by c.job,a.employeeid,a.area,a.city) a
inner join (
select * from ( select sum(a.num*a.price) as C4,a.employeeid as B4,c.job as A4,max(b.EMPNAME) as mc_B42
from dingdan a
inner join xiaoshouyuan c
on (c.employeeID = a.employeeid)
left join employee b
on (a.employeeid=b.EMPID)
group by c.job,a.employeeid ) as temp_ limit 1000) b
on (a.B4=b.B4 or (a.B4 is null and b.B4 is null)) and (a.A4=b.A4 or (a.A4 is null and b.A4 is null))
inner join (
select * from ( select sum(a.num*a.price) as C4,a.city as C2,a.area as C1
from dingdan a
inner join xiaoshouyuan c
on (c.employeeID = a.employeeid)
left join employee b
on (a.employeeid=b.EMPID)
group by a.area,a.city ) as temp_ limit 500) c
on (a.C2=c.C2 or (a.C2 is null and c.C2 is null)) and (a.C1=c.C1 or (a.C1 is null and c.C1 is null))




这个是那个后台生成的sql语句,很长很长,看着无从下手
另外报表里没有设置任何过滤条件,连指标字段都没有加过滤条件或者数据期条件

小灰灰1 数据达人Lv4

发表于2020-7-14 15:47

只看该作者

取消 关注该作者的回复

地板

xxxl 发表于 2020-7-14 15:19
您表样有没有设置什么过滤条件之类的呢,您可以在计算完之后点击详细信息查看生成的sql语句是否符合您数据 ...

或者换个问题, 这个C4在计算的时候,他的过滤条件是什么,或者他执行的sql语句相当于是什么样的?

xxxl 数据领袖Lv6

发表于2020-7-14 15:48

只看该作者

取消 关注该作者的回复

5#

小灰灰1 发表于 2020-7-14 15:24
2020-07-14 15:08:29 当前连接池为【mysql】,执行SQL:
select a.C4,a.C2,a.C1,a.B4,a.A4,a ...

粗虐看,您这里好像就没有city这个条件  只有id。您浮动表中城市没有包含到id那一行吗

xxxl 数据领袖Lv6

发表于2020-7-14 15:49

只看该作者

取消 关注该作者的回复

6#

小灰灰1 发表于 2020-7-14 15:47
或者换个问题,这个C4在计算的时候,他的过滤条件是什么,或者他执行的sql语句相当于是什么样的?
...

这里不是已经做这个查询了吗

小灰灰1 数据达人Lv4

发表于2020-7-14 15:52

只看该作者

取消 关注该作者的回复

7#

xxxl 发表于 2020-7-14 15:48
粗虐看,您这里好像就没有city这个条件  只有id。您浮动表中城市没有包含到id那一行吗 ...

这个怎么设置呀?
原始需求是,这里C4的合计是算DINGDAN表里的num*price的和,条件是上面的城市加左侧的employeeid
也就是,这里的C4要执行这样的一个sql语句:select sum(price*num) from dingdan where employeeid='左侧的id值' and city='上面的city值'

xxxl 数据领袖Lv6

发表于2020-7-14 15:55

只看该作者

取消 关注该作者的回复

8#

小灰灰1 发表于 2020-7-14 15:52
这个怎么设置呀?
原始需求是,这里C4的合计是算DINGDAN表里的num*price的和,条件是上面的城市加左侧的e ...

把上侧浮动表元城市的范围括进C4  sum(num*price)中去在计算试试

小灰灰1 数据达人Lv4

发表于2020-7-14 16:52

只看该作者

取消 关注该作者的回复

9#

xxxl 发表于 2020-7-14 15:55
把上侧浮动表元城市的范围括进C4  sum(num*price)中去在计算试试

已经在浮动范围里面了,C4的浮动范围在第四行和第三列里都有

xxxl 数据领袖Lv6

发表于2020-7-14 17:33

只看该作者

取消 关注该作者的回复

10#

小灰灰1 发表于 2020-7-14 16:52
已经在浮动范围里面了,C4的浮动范围在第四行和第三列里都有

city和job以及Id在同一个主题表下面吗

小灰灰1 数据达人Lv4

发表于2020-7-14 17:39

只看该作者

取消 关注该作者的回复

11#

xxxl 发表于 2020-7-14 17:33
city和job以及Id在同一个主题表下面吗

不在
如果在的话,就没问题了
是单元格里无法实现不同表的关联取数么?
只能提前吧数据处理好么?
但是我没ETL的功能呢,常规sql方式的主题表处理不了跨库的表关联呢

上一页12下一页共2页

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

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

小时

全天响应

分钟

快速处理问题

工程师强势助力

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

400咨询:400-0011-866

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

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

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