报错,求修正
表名称为Salary和Employee,括号里那个是工资
题主给的信息比较少,最好展示两个表的字段数据,以下是我根据现有情况猜测的思路,供参考:
SELECT
t2.Dept
,SUM(t1.Actual) AS sum_actual
,AVG(t1.Actual) AS avg_actual
,MAX(t1.Actual) AS max_actual
,MIN(t1.Actual) AS min_actual
FROM
(
SELECT
Eid
,Actual
FROM Salary
WHERE LauchDate BETWEEN '2017-03-01' AND '2017-03-31'
) t1
LEFT OUTER JOIN
(
SELECT
Eid
,Dept
FROM Employee
) t2
ON t1.Eid = t2.Eid
GROUP BY t2.Dept
ORDER BY avg_actual DESC
;
你这sql语句写错了好吧。大概是这样:
select Employee.Dept, SUM(Actual) AS '总工资', AVG(Actual) AS '平均工资', MAX(Actual) AS '最高工资',
MIN(Actual) AS '最低工资'
from Salary, Employee
where Employee.Eid = Salary.Eid and LauchDate between '2017-03-01' and '2017-03-31'
order by '平均工资' desc;