栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

总和,平均,最大,最小,空值计数

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

总和,平均,最大,最小,空值计数

这是一个很好的问题,但没有一个很好的答案。

NULL
您的两个示例中对的处理是不同的。

根本问题是什么

NULL
意思。通常,它用于表示 缺失 值。但是,在ANSI标准中,它代表 未知
值。我敢肯定,哲学家可以将书目专门放在“遗漏”和“未知”之间的区别上。

在一个简单的表达式(布尔,算术或标量的另一种形式)中,几乎在所有操作数都是“未知”的所有情况下,ANSI都会定义“未知”的结果。有一些例外:

NULLAND FALSE
为假且
NULL IS NULL
为真,但是很少见。

对于聚合操作,可以将其

SUM()
视为“所有已知值的总和”,依此类推。
SUM()
与对待
NULL
价值观不同
+
。但是,此行为也是标准行为,因此所有数据库都是这样工作的。

如果要在

NULL
某个聚合操作的 任何 操作数为某个值时使用一个值
NULL
,则需要使用
CASE
。我认为单列的最简单方法是:

(CASE WHEN COUNT(col) = COUNT(*) THEN SUM(COL) END)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/404625.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号