当前位置: 首页 > news >正文

SparkSQL 聚合函数 MAX 对 NULL 值的处理

SparkSQL 聚合函数 MAX 对 NULL 值的处理

官网:https://spark.apache.org/docs/4.0.0/sql-ref-functions.html

https://spark.apache.org/docs/4.0.0/sql-ref-null-semantics.html#builtin-aggregate-expressions

在这里插入图片描述

MAX(column) 会自动忽略 NULL 值,只在非空值中寻找最大值。

  • 如果整列都是 NULL,则返回 NULL
  • 如果列中只有部分为 NULL,不影响最大值的计算。

Demo:

WITH data AS (SELECT * FROM VALUES(10),(20),(NULL)AS tab(col)
)
SELECT max(col) AS max_value FROM data;
-- 找到最大值 30,忽略所有 NULL 值。

在这里插入图片描述


WITH data AS (SELECT * FROM VALUES(NULL),(NULL),(NULL)AS tab(col)
)
SELECT max(col) AS max_value FROM data;
-- 没有任何有效值时,MAX() 返回 NULL。

在这里插入图片描述


MAX() 也适用于字符串。

WITH data AS (SELECT * FROM VALUES('apple'),('banana'),(NULL),('cherry')AS tab(col)
)
SELECT max(col) AS max_value FROM data;
-- 字符串按照字典顺序排序,'cherry' 是最大的。

在这里插入图片描述


其它聚合函数:

函数如何处理 NULL
MAX(col)忽略 NULL,找最大值;全为 NULL 返回 NULL
MIN(col)忽略 NULL,找最小值;全为 NULL 返回 NULL
SUM(col)忽略 NULL,加总非空值;全为 NULL 返回 NULL
AVG(col)忽略 NULL,计算平均值;全为 NULL 返回 NULL
COUNT(col)只统计非 NULL 数量
COUNT(*)统计所有行数,包含 NULL

Spark官方对于各种函数处理null值的说明:

https://spark.apache.org/docs/4.0.0/sql-ref-null-semantics.html

在这里插入图片描述

http://www.dtcms.com/a/293561.html

相关文章:

  • AWS Lambda IoT数据处理异常深度分析:从告警到根因的完整排查之路
  • Notepad++工具操作技巧
  • BitDistiller:通过自蒸馏释放 Sub-4-Bit 大语言模型的潜力
  • React Native + Expo 入坑指南:从核心概念到实战演练
  • Android 测试全指南:单元测试与UI测试框架详解
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——3. QML入门:像搭积木一样构建UI
  • 论文笔记:Tuning Language Models by Proxy
  • 图机器学习(16)——图数据与自然语言处理
  • qiankun 和 Element UI 影响 el-cascader 宽度问题
  • 计算机毕设分享-基于SpringBoot的房屋租赁系统(开题报告+源码+Lun文+开发文档+数据库设计文档)
  • win11安装erlang和rabbitmq
  • 基于 XGBoost 与 SHAP 的医疗自动化办公与可视化系统(上)
  • Kafka——Kafka中的位移提交
  • ITIL 4:云计算与微服务对组织架构的影响
  • Elasticsearch(ES)介绍和安装
  • 20250704-基于强化学习在云计算环境中的虚拟机资源调度研究
  • ElasticSearch基础数据管理详解
  • CSS3文本阴影特效全攻略
  • Paimon的部分更新以及DeleteVector实现
  • 把xml的格式从utf-8-bom转为utf-8
  • HarmonyOS Flutter Boost完全接入手册:爬完所有坑的实战指南
  • Python-docx编号列表解析:从XML迷宫到结构化数据的破局之道
  • SpringCloud学习总结笔记之Ribbon
  • IDEA maven加载依赖失败不展示Dependencies项
  • 图机器学习(18)——使用图构建文档主题分类模型
  • 使用idea 将一个git分支的部分记录合并到git另一个分支
  • 阿里云ODPS十五周年重磅升级发布:为AI而生的数据平台
  • 第七章 Pytorch构建模型详解【构建CIFAR10模型结构】
  • Cmake、VS2019、C++、openGLopenCV环境安装
  • idea部署新项目时,用自定义的maven出现的问题解决