• Error:ORA-00937: 非单组分组函数错误


    版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/istend/article/details/34429721

    ORA-00937: 非单组分组函数错误


    select count(*), t.user_name
      from sys_user t, sys_department a, sys_dep_type d
     where t.dep_id = a.dep_id
       and a.dep_id = d.dep_id  
       and t.recd_is_del = 0
    <strong>group by t.user_name</strong>

    此错误,关键在于聚合函数。也就是count(*)
    原因是DB无法操作:
    既然指定了聚合函数,又同一时候指定了其它列。还想不依照指定的列来分组,。就像你须要统计班上男女生的人数,可是又不能分组。仅仅能在一条数据里表示出来,
    .解决:使用group by 对其分组

    聚合函数,

    是对一组值运行计算并返回单一的值的函数,它常常与SELECT语句的GROUP BY子句一同使用

    1. AVG 返回指定组中的平均值,空值被忽略。


    例:select prd_no,avg(qty) from sales group by prd_no

    2. COUNT 返回指定组中项目的数量。
    例:select count(prd_no) from sales

    3. MAX 返回指定数据的最大值。
    例:select prd_no,max(qty) from sales group by prd_no

    4. MIN 返回指定数据的最小值。


    例:select prd_no,min(qty) from sales group by prd_no

    5. SUM 返回指定数据的和,仅仅能用于数字列。空值被忽略。
    例:select prd_no,sum(qty) from sales group by prd_no

    6. COUNT_BIG 返回指定组中的项目数量,与COUNT函数不同的是COUNT_BIG返回bigint值。而COUNT返回的是int值。
    例:select count_big(prd_no) from sales

    7. GROUPING 产生一个附加的列,当用CUBE或ROLLUP运算符加入行时。输出值为1.当所加入的行不是由CUBE或ROLLUP产生时,输出值为0.
    例:select prd_no,sum(qty),grouping(prd_no) from sales group by prd_no with rollup

    8. BINARY_CHECKSUM 返回对表中的行或表达式列表计算的二进制校验值,用于检測表中行的更改。


    例:select prd_no,binary_checksum(qty) from sales group by prd_no

    9. CHECKSUM_AGG 返回指定数据的校验值。空值被忽略。
    例:select prd_no,checksum_agg(binary_checksum(*)) from sales group by prd_no

    10. CHECKSUM 返回在表的行上或在表达式列表上计算的校验值,用于生成哈希索引。



    11. STDEV 返回给定表达式中全部值的统计标准偏差。
    例:select stdev(prd_no) from sales

    12. STDEVP 返回给定表达式中的全部值的填充统计标准偏差。
    例:select stdevp(prd_no) from sales

    13. VAR 返回给定表达式中全部值的统计方差。
    例:select var(prd_no) from sales

    14. VARP 返回给定表达式中全部值的填充的统计方差。


    例:select varp(prd_no) from sales)

  • 相关阅读:
    activity 之间传递参数
    手动创建一个Activity,完成页面跳转(intent 无参数)
    C++中汉字字符串的截取
    android基础知识清单。
    更改远程仓库
    设计模式六大原则
    事件订阅代码
    Python Mac ssl.SSLError certificate verify failed (_ssl.c:833)
    Python库中常见的 __all__ 变量是干啥的
    Thrift的使用-Python
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10854907.html
  • Copyright © 2020-2023  润新知