为啥底层是数值类型,casewhen得出字符串得不到结果

image.png

化身孤岛 发布于 2022-4-20 15:49
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
CD20160914Lv8专家互助
发布于2022-4-20 15:52(编辑于 2022-4-20 15:54)

then ifnull(你的字段,0)   else 0 end as 当期应收

then isnull(你的字段,0)   else 0 end as 当期应收

then nvl(你的字段,0)   else 0 end as 当期应收

你当期应收的字段是不是有null?不知道你是什么数据库,你转换一下试一下。。。

类似这样试一下呢?你确定你的那个字段是数字类型?

最佳回答
0
尛鬼Lv5中级互助
发布于2022-4-20 15:53

end前面来个else呀。等于的时候给他一个值。不等于的时候呢

最佳回答
0
15922204585Lv6高级互助
发布于2022-4-20 16:19

format('${date}','yyyy-MM')

换成它试试

image.png

最佳回答
0
数码天空Lv4初级互助
发布于2022-4-20 16:38

你SQL语句里面的两处公式写错了,将date改成today(),修改成如下格式:

'${FORMAT(TODAY(),"yyyy-MM")}'

'${FORMAT(YEARDELTA(TODAY(), -1),"yyyy-MM")}'

  • 5关注人数
  • 300浏览人数
  • 最后回答于:2022-4-20 16:38
    请选择关闭问题的原因
    确定 取消
    返回顶部