• 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

  • 相关阅读:
    秒杀多线程第八篇 经典线程同步 信号量Semaphore
    SURF特征
    (最短路径算法整理)
    中国大推力矢量发动机WS15 跨入 世界先进水平!
    SQL Profile 总结(一)
    Spring下@ResponseBody响应中文内容乱码问题
    Ubuntu12.04下jamvm1.5.4+classpath-0.98成功执行 helloworld.class
    【2012.1.24更新】不要再在网上搜索eclipse的汉化包了!
    [数据结构] N皇后问题
    DG之主库、备库切换(物理备库)
  • 原文地址:https://www.cnblogs.com/chenxizhang/p/1330388.html
Copyright © 2020-2023  润新知