找文章 / 找答案
精选问答 更多内容

[数据处理] sql

yhdata_MB5fOVHS铂金四 显示全部楼层 发表于 2022-4-1 14:37:28 |阅读模式 打印 上一主题 下一主题
1
已解决

【数据处理】 sql

2881 16
请问1.计算列的sql书写规则可以详细写一下嘛,2.和数据集写sql的区别,感谢感谢

最佳答案

永洪tech-Lerry 青铜一 关注Ta

2022-04-01 14:37:29

哦估计是这个复制有问题,我从产品里复制会少右半边中括号, 计算列A:fixed(col['时间']::sum(col['一次通过数'])) 计算列B:fixed(col['时间']::sum(col['产能'])) 计算列C:include(col['时间'],col['domain']::sum(col['一次通过数'])) 计算列D:include(col['时间'],col['domain']::sum(col['产能'])) 上面这样,上面那个是总通过率计算用的,为了固定只用时间维度进行汇总; 下面那个是为了先同时对时间和domain两个维度都 ...
查看完整内容
回复

使用道具 举报

精彩评论16

永洪tech-Lerry青铜一 显示全部楼层 发表于 2022-4-1 14:37:29
yhdata_MB5fOVHS 发表于 2022-4-1 18:06
计算列A:fixed(col['时间'::sum(col['一次通过数'))
计算列B:fixed(col['时间'::sum(col['产能'))
计算 ...

哦估计是这个复制有问题,我从产品里复制会少右半边中括号,
计算列A:fixed(col['时间']::sum(col['一次通过数']))
计算列B:fixed(col['时间']::sum(col['产能']))
计算列C:include(col['时间'],col['domain']::sum(col['一次通过数']))
计算列D:include(col['时间'],col['domain']::sum(col['产能']))
上面这样,上面那个是总通过率计算用的,为了固定只用时间维度进行汇总;
下面那个是为了先同时对时间和domain两个维度都汇总再相除,不然直接相除会做成把你时间节点上的所有数据分布除了之后再汇总。
回复

使用道具 举报

永洪tech-cp青铜三 显示全部楼层 发表于 2022-4-1 15:10:24
两边都是支持标准的sql写法,相关函数使用您可以点击函数名后跟进提示语法样例编写
回复

使用道具 举报

yhdata_MB5fOVHS铂金四 显示全部楼层 发表于 2022-4-1 15:14:25
永洪tech-cp 发表于 2022-4-1 15:10
两边都是支持标准的sql写法,相关函数使用您可以点击函数名后跟进提示语法样例编写 ...

case when domain = 0 then sum(col['一次通过数'])/sum(col['产能']) end
报错syntax error([script]#1)
回复

使用道具 举报

永洪tech-Lerry青铜一 显示全部楼层 发表于 2022-4-1 15:24:56
yhdata_MB5fOVHS 发表于 2022-4-1 15:14
case when domain = 0 then sum(col['一次通过数'])/sum(col['产能']) end
报错syntax error([script]#1) ...

在数据集的计算列中不支持聚合,您试下在报告中这么写计算列,应该可以正常运行
回复

使用道具 举报

yhdata_MB5fOVHS铂金四 显示全部楼层 发表于 2022-4-1 15:42:05
永洪tech-Lerry 发表于 2022-4-1 15:24
在数据集的计算列中不支持聚合,您试下在报告中这么写计算列,应该可以正常运行 ...

会提示让你加上col['domain']),加上之后就说维度计算列和聚合计算列不能混合使用,请问怎么解决呢,我不仅要展示在文本里,后面还要把为0和为1分别计算出来的都展示在折线图,所以必须要计算出来,不能在组件右上角加过滤条件
回复

使用道具 举报

永洪tech-Lerry青铜一 显示全部楼层 发表于 2022-4-1 16:00:52
yhdata_MB5fOVHS 发表于 2022-4-1 15:42
会提示让你加上col['domain']),加上之后就说维度计算列和聚合计算列不能混合使用,请问怎么解决呢,我不 ...

我理解的是,您这里希望返回的其实不是对应行的聚合,而是全数据的两个求和相除吗
回复

使用道具 举报

yhdata_MB5fOVHS铂金四 显示全部楼层 发表于 2022-4-1 16:07:25
永洪tech-Lerry 发表于 2022-4-1 16:00
我理解的是,您这里希望返回的其实不是对应行的聚合,而是全数据的两个求和相除吗 ...

“汇总通过率”是全数据的两个求和相除,这个domain字段的值为(0或1,0代表终端,1代表泛网络),现在也要求“终端通过率”和“泛网络通过率”这里就需要对应行的集合了,因为折线图是列轴为时间,行轴是通过率,然后通过率就是上面三个通过率
回复

使用道具 举报

永洪tech-Lerry青铜一 显示全部楼层 发表于 2022-4-1 16:30:58
yhdata_MB5fOVHS 发表于 2022-4-1 16:07
“汇总通过率”是全数据的两个求和相除,这个domain字段的值为(0或1,0代表终端,1代表泛网络),现在也 ...

也就是您希望生成的是行为通过率,列为时间的三个通过率折线图?
回复

使用道具 举报

yhdata_MB5fOVHS铂金四 显示全部楼层 发表于 2022-4-1 16:34:58
永洪tech-Lerry 发表于 2022-4-1 16:30
也就是您希望生成的是行为通过率,列为时间的三个通过率折线图?

嗯嗯,但是这三个通过率里根据那个字段的分的通过率怎么写都写不对,计算列里的函数和sql都试了
回复

使用道具 举报

高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
50W

会员等你来哦

Copyright   ©2012-2024  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部