select * from t_Salary a where (select count(*) from t_Salary where Dept_ID=a.Dept_ID and Salary<=a.Salary) between 2 and 3 ---这只有在工资没有重复的时候有效,工资有重复的情况先想想
select top 2 * from (select top 3 ts.*,td.* from t_Salary ts,t_Dept td where td.ID=ts.ID order by Salary DESC) T
where (select count(*) from t_Salary where Dept_ID=a.Dept_ID and Salary<=a.Salary)
between 2 and 3
---这只有在工资没有重复的时候有效,工资有重复的情况先想想