SELECT TSBA.ACCTYPEID, TSBA.ACCTYPENAME, TSBA.ACCTYPECODE, TSBA.ACCTYPENAT, TSBA.ACT_TYPE FROM T_SCM_BAS_ACCTYPE TSBA RIGHT JOIN T_BAS_USER_ACCTYPE TBUA ON TSBA.ACCTYPEID=TBUA.ACCTYPEID GROUP BY TSBA.ACCTYPEID 报错ORA-00979: not a GROUP BY expression
时间: 2024-04-09 10:27:03 浏览: 88
ORA-00979错误是因为在使用GROUP BY子句时,SELECT列表中的列没有按照GROUP BY子句中指定的顺序进行分组。为了修复这个错误,您需要确保SELECT列表中的所有列都在GROUP BY子句中进行了分组。
在您的查询中,您使用了RIGHT JOIN和GROUP BY子句,但是您的SELECT列表中没有按照GROUP BY子句中指定的顺序进行分组。为了解决这个问题,您可以将所有在SELECT列表中的列都添加到GROUP BY子句中。
修复后的查询如下所示:
SELECT
TSBA.ACCTYPEID,
TSBA.ACCTYPENAME,
TSBA.ACCTYPECODE,
TSBA.ACCTYPENAT,
TSBA.ACT_TYPE
FROM T_SCM_BAS_ACCTYPE TSBA
RIGHT JOIN T_BAS_USER_ACCTYPE TBUA ON TSBA.ACCTYPEID=TBUA.ACCTYPEID
GROUP BY
TSBA.ACCTYPEID,
TSBA.ACCTYPENAME,
TSBA.ACCTYPECODE,
TSBA.ACCTYPENAT,
TSBA.ACT_TYPE
请注意,根据您的具体需求,您可能还需要调整JOIN条件以及SELECT和GROUP BY子句中的列。
阅读全文