Comment trouver third or nth
maximum du salaire de salaire table(EmpID,EmpName,EmpSalary)
dans le Optimisé façon?
Merci à l'Avance.
Comment trouver third or nth
maximum du salaire de salaire table(EmpID,EmpName,EmpSalary)
dans le Optimisé façon?
Merci à l'Avance.
Numéro De Ligne :
SELECT Salary,EmpName
FROM
(
SELECT Salary,EmpName,ROW_NUMBER() OVER(ORDER BY Salary) As RowNum
FROM EMPLOYEE
) As A
WHERE A.RowNum IN (2,3)
Sous Requête :
SELECT *
FROM Employee Emp1
WHERE (N-1) = (
SELECT COUNT(DISTINCT(Emp2.Salary))
FROM Employee Emp2
WHERE Emp2.Salary > Emp1.Salary
)
Top Des Mots Clés :
SELECT TOP 1 salary
FROM (
SELECT DISTINCT TOP n salary
FROM employee
ORDER BY salary DESC
) a
ORDER BY salary
Si vous souhaitez optimiser signifie pas utiliser de mot-Clé, de Sorte que le nième max et min salaires requête comme suit.
N salaire maximum
SÉLECTIONNEZ MIN(EmpSalary) DE Salaire OÙ EmpSalary IN(SELECT TOP N EmpSalary DE Salaire de l'ORDRE PAR EmpSalary DESC)
Ex: 3 salaire maximum
SÉLECTIONNEZ MIN(EmpSalary) DE Salaire OÙ EmpSalary IN(SELECT TOP 3 EmpSalary DE Salaire de l'ORDRE PAR EmpSalary DESC)
N salaire minimum
SELECT MAX(EmpSalary) DE Salaire OÙ EmpSalary IN(SELECT TOP N EmpSalary DE Salaire de l'ORDRE PAR EmpSalary ASC)
Ex: 3 salaire maximum
SÉLECTIONNEZ MIN(EmpSalary) DE Salaire OÙ EmpSalary IN(SELECT TOP 3 EmpSalary DE Salaire de l'ORDRE PAR EmpSalary ASC)
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.