如何用*来标记薪水最高的员工? - SQL Server

Dee*_*pak 0 sql sql-server

我有一个问题 - 这是我的Employee表:

Name  | Department  | Salary
------+-------------+-------------
Ram   |IT           |  1000    
Shyam |HR           |  2000    
Sita  |Management   |  5000  
Joe   |IT           |  6000    
Lacy  |HR           |  2000    
Gen   |Management   |  4000  
Maria |IT           |  2000    
Antony|HR           |  3000    
Raman |Management   |  50000  
Run Code Online (Sandbox Code Playgroud)

现在我想要这样的结果:

Department   |   Salary   |
-------------+------------+    
IT           |  20000    
HR           |  30000    
Management   |  50000     |  *
Run Code Online (Sandbox Code Playgroud)

*将被用于标记来自任何部门的最大薪水.我尝试了许多不成功的尝试,例如:

Select 
    Salary,
    Case 
       When Salary = Max(Salary) Then '*' 
    End 
From 
    tblEmployees 
Group By 
    Salary
Run Code Online (Sandbox Code Playgroud)

Gor*_*off 5

你想要一个窗口功能:

Select Department, max(Salary) as salary,
       (case When max(Salary) = max(Max(Salary)) over ()
             Then '*' 
        End)
from tblEmployees
group by department;
Run Code Online (Sandbox Code Playgroud)