当前位置: 首页 > 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.lryc.cn/news/597602.html

相关文章:

  • 基于多种机器学习的水质污染及安全预测分析系统的设计与实现【随机森林、XGBoost、LightGBM、SMOTE、贝叶斯优化】
  • 小白做投资测算,如何快速上手?
  • 网安-SQL注入-sqli-labs
  • OpenLayers 快速入门(七)矢量数据
  • Centos7.9多网卡绑定做链路聚合
  • 回顾 Palantir:八年之旅的反思
  • 《P4092 [HEOI2016/TJOI2016] 树》
  • 线段树学习笔记 - 练习题(1)
  • UniApp X 网络请求避坑指南:从 JS 到 UTS 的 JSON 数据处理全解析
  • Neo4j 框架 初步简单使用(基础增删改查)
  • OpenEuler系统架构下编译redis的RPM包
  • 【基于OpenCV的图像处理】图像预处理之图像色彩空间转换以及图像灰度化处理
  • 【web页面接入Apple/google/facebook三方登录】
  • SQL基础⑥ | 聚合函数
  • Java项目中定时任务三方工具和技术的深度应用指南
  • Kubernetes 日志收集
  • biji 1
  • 事务与索引:数据库核心机制详解
  • 解析云蝠智能 VoiceAgent 的技术架构与应用实践
  • Linux第三天Linux基础命令(二)
  • 不同地区的主要搜索引擎工具
  • 原创-基于 PHP 和 MySQL 的证书管理系统 第三版
  • Windows 用 Python3 快速搭建 HTTP 服务器
  • 网络基础DAY18-动态路由协议基础
  • 观影《长安的荔枝》有感:SwiftUI 中像“荔枝转运”的关键技术及启示
  • Linux文件fd
  • 架构师--缓存场景
  • vmware分配了ubuntu空间但是ubuntu没有获取
  • python---列表(List)
  • 龙虎榜——20250723