0

你好朋友我一直在写一个查询。你能帮帮我吗?我有一张名为prog并且有 column的表doj。在name列中,我有所有员工的姓名,在doj列中,我有他们的加入日期。我必须找出经验最少的员工的姓名,所以我编写了这个查询来使用他们的加入日期找到经验最少的员工:

SELECT 
min(DATEDIFF(YEAR,doj,GETDATE()) - 
(CASE WHEN 
 DATEADD(YY,DATEDIFF(YEAR,doj,GETDATE()),doj) > GETDATE()
 THEN 1
 ELSE 0 END)) AS 'least experience'
FROM programmer

我无法找到name员工。如果我使用该列namegroup by我会得到所有员工的名单以及他们的姓名和工作年限。我如何才能找出经验最少的特定员工的姓名。在此先感谢并等待回复。

4

1 回答 1

7

这将选择具有最近开始日期的程序员。

Select top 1 name, doj 
from programmer
order by doj desc
于 2013-05-20T06:59:02.250 回答