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

数据列中对空值转换为0会有异常

cjy青铜四 显示全部楼层 发表于 2022-10-17 08:20:29 |阅读模式 打印 上一主题 下一主题
1
未解决

数据列中对空值转换为0会有异常

  • cjy青铜四
  • 2022-10-17 08:20:29
  • 发布在 论坛
1791 10
数据列中对空值转换为0会有异常,那个0改成0.00001就行了


写0会显示数据异常(所有数据都显示为0),写成0.00001数据显示正常
微信截图_20221017081643.png
微信截图_20221017082004.png
回复

使用道具 举报

精彩评论10

lwaaa白银三 显示全部楼层 发表于 2022-10-17 09:11:20
计算列看不完整,把里面的类容完整发出来看看
回复

使用道具 举报

cjy青铜四 显示全部楼层 发表于 2022-10-17 09:17:37
本帖最后由 cjy 于 2022-10-17 09:19 编辑
lwaaa 发表于 2022-10-17 09:11
计算列看不完整,把里面的类容完整发出来看看

ifnull(
sum(case col['IS_CURR_DATE'] when 'Y' then col['隐裂_数量'] else 0 end)
/
sum(case col['IS_CURR_DATE'] when 'Y' then col['隐裂_总选数'] else 0 end)
,0)
回复

使用道具 举报

lwaaa白银三 显示全部楼层 发表于 2022-10-17 09:45:58
cjy 发表于 2022-10-17 09:17
ifnull(
sum(case col['IS_CURR_DATE'] when 'Y' then col['隐裂_数量'] else 0 end)
/

不能 0/0
回复

使用道具 举报

yhdata_lyaa 显示全部楼层 发表于 2022-10-17 09:56:33
数据是不是接近0呀,被除数是0 结果就是0了,除数也不能为0
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-17 09:57:28
当都返回else得时候就是0/0了,
回复

使用道具 举报

cjy青铜四 显示全部楼层 发表于 2022-10-17 10:15:56
yhdata_yzm 发表于 2022-10-17 09:57
当都返回else得时候就是0/0了,

那为啥后面改成

ifnull(
sum(case col['IS_CURR_DATE'] when 'Y' then col['隐裂_数量'] else 0 end)
/
sum(case col['IS_CURR_DATE'] when 'Y' then col['隐裂_总选数'] else 0 end)
,0.00001)

就好了呢
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-17 10:47:56
ifnull判断返回值为0.00001
回复

使用道具 举报

cjy青铜四 显示全部楼层 发表于 2022-10-17 10:59:26
yhdata_yzm 发表于 2022-10-17 10:47
ifnull判断返回值为0.00001

不是,是所有的值都正常了    写0 就都不正常
回复

使用道具 举报

yhdata_yzm 显示全部楼层 发表于 2022-10-17 11:13:14
cjy 发表于 2022-10-17 10:59
不是,是所有的值都正常了    写0 就都不正常

我大概理解了,你是说写0的时候ifnull()只会返回0,写成其他的就没问题,就可以正常返回表达1,有数据样例吗,我们看看
回复

使用道具 举报

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

  • 官方微信

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

    扫码关注
  • 新浪微博

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

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

会员等你来哦

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