解决方案 »

  1.   

    子查询报的错
    子查询中group by etotal14,但是select 子句中出现了etotal14之外的其他字段errorn,这个是没办法处理的
    有group的sql语句中,select子句中可以出现以下几种:
    1、group的字段
    2、组函数
    3、常数或常数表达式
    4、基于group字段的表达式或子查询
    基本语法问题,建议找本教材好好补习一下
      

  2.   

    1、内层errorn看不懂  
      如果是有errorn字段:group by不加errorn能不报错?然后14又取别名errorn 外层如何识别?
      如果是没有这字段,那放这什么情况?2、既然内层已经分组查询出数量 那说明errorn已经唯一了 ,为什么外层又分组sum? 总结: 看不懂思路...
      

  3.   

    语句写错了吧?  怎么会有 
    ,errorn
                etotal14 errorn  这个,语法也应该通不过吧?
      

  4.   

    在使用group by 时,有一个规则需要遵守,即出现在select列表中的字段,如果没有在组函数中,那么必须出现在group by 子句中。(select中的字段不可以单独出现,必须出现在group语句中或者在组函数中。)
    一些其他关键字用法:
    当在gropu by 子句中使用having 子句时,查询结果中只返回满足having条件的组。在一个sql语句中可以有where子句和having子句。having 与where 子句类似,均用于设置限定条件  where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚合函数,使用where条件显示特定的行。 
    having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚合函数,使用having 条件显示特定的组,也可以使用多个分组标准进行分组。 使用order by排序时order by子句置于group by 之后 并且 order by 子句的排序标准不能出现在select查询之外的列。