用子查询选出salary的最大和最小值,然后限制salary不等于最大或最小值并且to_date='9999-01-01',最后将salary取平均。

select avg(s.salary) from salaries as s,
(select max(salary) as Mx, min(salary) as Mn from salaries
where to_date = '9999-01-01' ) as temp
where s.salary <> temp.Mx and s.salary <> temp.Mn and s.to_date = '9999-01-01'