Oracle SQL-Error: ORA-00937: not a single-group group functi


create or replace view DeptInfo as
select dnumber, dname, AVG(salary), max(salary), min(salary)
from department, employee;

我环顾四周,并尝试组合小组试图找出这个问题。对不起,我很平庸,只是一个微不足道的学生。

dnumber和dname来自部门表,而salary来自员工表。

你的问题不太清楚。字段来自哪些表?

你需要为你的3个字段有子查询,因为它们都需要group by子句

之类的
 create or replace view DeptInfo as
 SELECT q1.dnumber, 
        q1.dname, 
        q1.AvgSal,
        q2.MaxSal,
        q3.MinSal
 FROM (SELECT dnumber, dname, AVG(salary) as AvgSal 
       FROM department, employee
       GROUP BY dnumber, dname) q1, 
      (SELECT dnumber, dname, MAX(salary) as MaxSal 
       FROM department, employee
       GROUP BY dnumber, dname) q2, 
      (SELECT dnumber, dname, MIN(salary) as MinSal 
       FROM department, employee
       GROUP BY dnumber, dname) q3
 WHERE q1.dnumber = q2.dnumber AND
       q2.dnumber = q3.dnumber AND
       q1.dname = q2.dname AND
       q2.dname = q3.name

编辑:不知怎么的…

最新更新