【发布时间】:2014-07-29 06:32:42
【问题描述】:
我有两张表,员工表和认证表。
认证表包含经认证可驾驶飞机的员工列表。一名员工可能获得了多架飞机的认证,反之亦然。并非所有员工都经过认证。
每个员工都领取薪水。 只有一份薪水,不管有多少认证。
我如何找到至少获得一架飞机认证的员工的平均工资?
我的问题是,
SELECT AVG(SALARY) FROM EMPLOYEE E, CERTIFIED C WHERE E.EID=C.EID;
如果员工获得两架飞机的认证,这包括两倍的薪水。所以 AVG(salary) 给出了错误的值。
我是新手,如果我的问题看起来太简单,我深表歉意。帮忙?
【问题讨论】:
-
您使用的是哪个 DBMS?给定员工的每个重复行的薪水是否相同?