Как получить верхнее значение N'th Maximum из таблицы в MS SQL? - PullRequest
1 голос
/ 15 апреля 2009

Предположим, что есть таблица «Сотрудник» с зарплатой в качестве одного из столбцов.

Я хочу получить максимальную зарплату «Top N» в одиночку из таблицы.

Как это можно легко получить?

Ответы [ 6 ]

3 голосов
/ 15 апреля 2009
SELECT TOP 1 employee.name, employee.salary from (
    SELECT TOP N employee.name, employee.salary
    FROM employee
    ORDER BY employee.salary DESC )

Это дает N-е сверху.

2 голосов
/ 15 апреля 2009
WITH    (
        SELECT  e.*, ROW_NUMBER() OVER (ORDER BY employee.salary DESC) AS rn
        FROM    employee
        ) AS q
SELECT  *
FROM    q
WHERE   rn = @n
1 голос
/ 14 августа 2012
SELECT TOP 1 E.Salary
FROM (SELECT TOP(N) Salary
      FROM Employee
      ORDER BY Salary DESC) E
ORDER BY E.Salary
0 голосов
/ 15 апреля 2009
 SELECT TOP 1 * FROM Employees
    ORDER BY Employees.Salary DESC
0 голосов
/ 15 апреля 2009
SELECT TOP 1 Salary FROM
(SELECT TOP(N) Salary FROM Employee
ORDER BY Salary DESC) E
0 голосов
/ 15 апреля 2009
SELECT TOP N employee.name, employee.salary
FROM employee
ORDER BY employee.salary DESC

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...