flink Unsupported operand types: IF(boolean, NULL, String)

问题:业务方存储了NULL 字符串,需要处理为 null

sql 复制代码
select if('a'='null',null,'a');

结果遇到了 Unsupported operand types: IF(boolean, NULL, String),根据报错反馈,很明显应该是没有对 null 自动转换(Spark 是会自动转的)

源码:

if 的源码我以前看过,就是calcyte自动生成的,在org.apache.flink.table.planner.codegen.calls 的 IfCallGen 类

确实没办法了,只能

sql 复制代码
select if(a='null',cast(null as string),'a')
相关推荐
WizLC几秒前
【JAVA】JVM类加载器知识笔记
java·jvm·笔记
喝汽水的猫^2 分钟前
Java实现Excel 导出(多 Sheet、复杂格式)
java·excel
毕设源码-朱学姐13 分钟前
【开题答辩全过程】以 基于JavaWeb的疾病查询系统的设计与实现为例,包含答辩的问题和答案
java·eclipse
雨中飘荡的记忆16 分钟前
Java面向对象编程详解
java·开发语言
zhangyifang_00925 分钟前
Spring中的BeanFactory类
java·后端·spring
大学生资源网28 分钟前
java毕业设计之面向校园的助力跑腿系统设计与实现源码(源码+文档+数据库)
java·数据库·mysql·毕业设计·源码·springboot
quikai19811 小时前
python练习第六组
java·前端·python
222you1 小时前
线程的常用方法
java·开发语言
是梦终空1 小时前
JAVA毕业设计259—基于Java+Springboot+vue3工单管理系统的设计与实现(源代码+数据库+开题报告)
java·spring boot·vue·毕业设计·课程设计·工单管理系统·源代码
用户2190326527351 小时前
Spring Boot 集成 Redis 实现看门狗 Lua 脚本分布式锁
java·后端