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')
相关推荐
周杰伦_Jay7 分钟前
【Go/Python/Java】基础语法+核心特性对比
java·python·golang
sszdlbw9 分钟前
后端springboot框架入门学习--第一篇
java·spring boot·学习
小鹿学程序12 分钟前
jdk配置完之后java -version还是默认的jdk版本如何更改
java·开发语言·python
她说彩礼65万15 分钟前
C# 反射
java·算法·c#
hhy_smile22 分钟前
Android 与 java 设计笔记
android·java·笔记
lkbhua莱克瓦2427 分钟前
IO练习——网络爬虫(爬取数据)
java·开发语言·爬虫·io流练习·java练习
喇一渡渡27 分钟前
Java力扣---滑动窗口(1)
java·算法·排序算法
一水鉴天32 分钟前
整体设计 之28 整体设计 架构表表述总表的 完整程序(之27 的Q268 )(codebuddy)
java·前端·javascript
net3m3334 分钟前
雅特力单片机用串口USART_INT_TDE中断比用USART_INT_TRAC的 发送效率要高
java·开发语言·算法
雪碧聊技术35 分钟前
深入解析:Java中int类型转换为String类型的多种方法
java·整数转为字符串