不是单组分组函数怎么解决 oracle ORA-00937: 非单组分组函数?
oracle ORA-00937: 非单组分组函数?
这种错误报告通常使用聚合函数,如count和sum,但不使用groupby来声明分组模式。
例如,有一个学生表。字段包括:班级编号、学生编号和学生姓名。现在我们需要知道每个班有多少人。如果查询语句是这样的:
从学生表中选择班级编号,计数(学生编号)
,我们必须报告一个错误。我们必须告诉数据库根据哪个字段进行分组。正确的书写方法是:
选择班级号,从学生表中按班级号分组计数(学生号)
不是单一的分组函数。通常,当在数据库中执行查询语句,并且不定期使用sum、AVG和count等聚合函数时,会报告错误。
例如,我们需要计算每个学生的最终分数:从成绩表中选择姓名、总和(单科分数)和总分。这样,将报告错误。必须使用group by来声明要用作分组计算基础的字段。正确的写作方法是:从成绩表中选择姓名、总和(单科成绩)作为总分,按姓名分组。
现在名字不够,还要加班级,所以写:从成绩表中选择班级、姓名、总和(单科成绩)作为总分,按姓名分组,实际又报错了。
这是因为类只放在查询列中,并且没有用group by声明。所以它应该是:从成绩表中选择班级,姓名,和作为总分,按班级分组,姓名。
不是单组分组函数怎么解决 sql不是单组分组函数 oracle聚合函数有哪些
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。