zoukankan      html  css  js  c++  java
  • TSQL中聚合函数对空值(NULL)的处理

    聚合函数对一组值执行计算,并返回单个值。除了 COUNT 以外,聚合函数都会忽略空值。聚合函数经常与 SELECT 语句的 GROUP BY 子句一起使用。

    所有聚合函数均为确定性函数。这表示任何时候使用一组特定的输入值调用聚合函数,所返回的值都是相同的。有关函数确定性的详细信息,请参阅确定性函数和不确定性函数OVER 子句可以跟在除 CHECKSUM 以外的所有聚合函数的后面。

    聚合函数只能在以下位置作为表达式使用:

    • SELECT 语句的选择列表(子查询或外部查询)。
    • COMPUTE 或 COMPUTE BY 子句。
    • HAVING 子句。

    Transact-SQL 提供下列聚合函数:

    AVG

    MIN

    CHECKSUM_AGG

    SUM

    COUNT

    STDEV

    COUNT_BIG

    STDEVP

    GROUPING

    VAR

    MAX

    VARP

    特别注意一下,如果没有配合GROUP语句,那么除了COUNT(*)之外,其他的聚合函数都是忽略空值的,下面看一个例子

    我有一个orders表,下面是一个截图

    image

    假设我们通过下面语句去计数

    SELECT COUNT(customerid) FROM Orders

    那么返回的结果是6,而不是7

    但是如果用

    SELECT COUNT(customerid) FROM Orders

    则可以返回7

  • 相关阅读:
    [ios] 分辨率
    [bat] 图片裁剪工具ImageMagick
    [ASP.NET] 调用32位ORACLE错误
    [Linux] 开启ESX的SSH
    [Linux] 关机和重启命令
    [.net] 关于CS0016: Could not write to output file ‘c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files… ‘Access is denied.’ 的解决办法
    [linux] XEN里面的虚拟机centos无法使用date s设置时间
    字符串替换,string的强大
    C语言学习笔记(1)
    C语言学习笔记(8)
  • 原文地址:https://www.cnblogs.com/chenxizhang/p/1330388.html
Copyright © 2011-2022 走看看