isnan:NaN判断
速查结论
isnan(expr) 是 Spark SQL 中用于**判断表达式值是否为 NaN(Not a Number)**的函数。
语法
isnan(expr)
参数说明
| 参数 | 说明 |
|---|---|
| expr | 待判断的数值表达式。NaN 仅存在于浮点类型(float/double)中。 |
返回说明
如果 expr 是 NaN,则返回 true;否则返回 false。
示例
> SELECT isnan(cast('NaN' as double));
true
常见报错与避坑指南
- NaN 与 NULL 的区别:
isnan(NULL)返回 false,而非 NULL。NaN 是浮点数运算产生的特殊值(如 0.0/0.0),NULL 是缺失值,两者完全不同。 - 仅浮点类型:NaN 概念仅存在于 float 和 double 类型中,整数类型不存在 NaN。
- 与 is null 的区别:
isnan判断数值是否为 NaN,is null判断是否为 NULL,两者不应混淆使用。
Since: 1.5.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

💬加群交流
备注「数据仓库技术」加入社群,每日一道大厂SQL真题
