ORA-00979:不是GROUP BY表达式;不明白为什么

时间:2015-09-30 19:14:33

标签: sql oracle select group-by

获取错误ORA-00979:不是GROUP BY表达式。我不确定为什么会这样。一切似乎都是正确的。我错过了一些明显明显的东西吗?

SELECT  to_number(CALOT_AWD_YR),
    CALOT_TPC,         
    ATCAT_ALLOT_NBR,
    ATCAT_TCAT,
    SUM(CALOT_AMT_FUNDED),
    ATCAT_C_OR_D_IND

FROM MYSCHEMA.STG_TED_CLNT_ALLOT_TAB, 
 MYSCHEMA.STG_TED_ALLOT_TCAT
WHERE  CALOT_TPC       =   ATCAT_TPC
 AND  CALOT_AWD_YR    =   ATCAT_AWD_YR
 AND  CALOT_ALLOT_NBR =   ATCAT_ALLOT_NBR
 AND  CALOT_TPC       in ( 'DL' , 'PL' , 'TH' )
GROUP BY CALOT_AWD_YR,
     CALOT_TPC,
     ATCAT_ALLOT_NBR,
     ATCAT_TCAT  

ORDER BY CALOT_AWD_YR,
     CALOT_TPC,
     ATCAT_ALLOT_NBR,
     ATCAT_TCAT;

2 个答案:

答案 0 :(得分:3)

您还需要按ATCAT_C_OR_D_IND进行分组

答案 1 :(得分:2)

ATCAT_C_OR_D_IND列表中的列select不在group by子句中。您需要将其从select列表中删除,对其应用一些聚合函数,或将其添加到group by子句中以使查询合法。