【发布时间】:2014-06-21 01:16:52
【问题描述】:
好的,问题来了。 我必须列出每个部门的部门 ID、部门名称、销售代表人数和平均佣金率。我还需要按部门分组,并按平均佣金率升序排序。
我在 De.Dept_ID 下的第 1 行收到一个错误,说这不是按表达式分组
这是我的代码:
SELECT DE.Dept_ID as DeptID, Dept_Name as DeptName, COUNT(SR.Sales_Rep_ID) as SalesRepCount,
Comm_Rate as AvgCommRate
FROM DEPT_arb DE, SALES_REP_arb SR, COMMISSION_arb C
WHERE DE.Dept_ID = SR.Dept_ID AND
Comm_Rate = (SELECT AVG(Comm_Rate) FROM COMMISSION_arb WHERE SR.Comm_Class = C.Comm_Class)
GROUP BY Dept_Name
ORDER BY C.Comm_Rate;
感谢您的意见
【问题讨论】:
-
如果调用任何聚合函数,则需要使用 GROUP BY 子句。
-
当我对 Dept_Name 执行 GROUP BY 时,我收到“Group by not properly end”错误。是的,我后面确实有一个分号。
-
您可以编辑问题以拥有
GROUP BY吗?你GROUP BY DE.Dept_ID as Dept_ID, Dept_Name吗?另外,AVG(Comm_Rate) AS AVGCOM? -
添加了一个组,但我现在收到一个不同的错误。刚刚更新了代码。