0
有此查询(请参阅下面): 我希望能够使用ROW_NUMBER()函数返回薪水第二高的记录。我知道如何使用该函数,但由于我有一个子查询,我无法弄清楚该把它放在哪里。使用ROW_NUMBER()查找Sql Server中的第二高
查询返回:
Yuriana Hagasawa NULL China Project Manager 56000.00
Venessa Katarina Cameron Denmark Tech Lead 185000.00
Sahi King NULL Denmark Design Engineer 156000.00
Chen Chen NULL Andorra Project Manager 76000.00
因此,使用行数函数我只想与SAHI王者归来的记录。谢谢。
SELECT C.[First Name],
C.[Last Name],
C.[Middle Name],
C.[Country Name],
C.[Designation Name],
Salary.Emp_Salary AS 'Current Salary'
FROM
(
SELECT
Emp_First_Name AS "First Name",
Emp_Last_Name AS "Last Name",
Emp_Middle_Name AS "Middle Name",
Country_Name AS "Country Name",
Desig_Name as "Designation Name",
MAX(Emp_Salary_Change_Year) AS "Change Year"
FROM Employee_Details AS e
INNER JOIN Country AS co ON e.Emp_Country_Id = co.Country_Id
INNER JOIN State AS s ON e.Emp_State_Id = s.State_Id
INNER JOIN Designation AS d ON e.Desig_Id = d.Desig_Id
INNER JOIN Salary AS sa ON e.Emp_Id = sa.Emp_Id
GROUP BY Emp_First_Name, Emp_Last_Name,
Emp_Middle_Name, Country_Name, Desig_Name) AS C
INNER JOIN Salary ON C.[Change Year] = Salary.Emp_Salary_Change_Year;
RowNo = 2去哪?我试着把它放在最后,并得到语法错误 –
我已更新查询,请看看 – Aruna
谢谢它的工作。 –