游标与标准SQL

时间:2017-03-14 13:40:04

标签: sql

我已经看到以下问题接近作为游标解决了,虽然我看到效率将它作为多重连接。我如何通过光标解决这个问题,如果我通过excel提取它,我是否应该这样做呢?

RecordID EmpID  FirstName   LastName    HiredDate   FiredDate
1111     1      John        Flanagan    1/02/2013   1/02/2014
2222     1      Michael     Richards    1/01/2014   1/02/2015
3333     3      Peter       Johnson     1/08/2014   1/07/2016
4444     3      Jim         Crow        1/09/2014   1/02/2017
5555     3      Own         Wilson      1/010/2014  1/03/2015

这是我最初使用SQL的尝试。

select EmpID, count(RecordID), HiredDate 
from Employer 
group by EmpID 
order by DESC. 

需要编写一个返回每个雇主的查询,每行包括公司雇用的最大雇员和上次雇用的日期。

我被要求将其写为光标,因为他们想要从excel中逐行提取上述数据。

1 个答案:

答案 0 :(得分:0)

如果EmpId是雇主ID,那么你几乎就在那里:

SELECT EmpID, COUNT(RecordID), MAX(HiredDate)
FROM Employer 
GROUP BY EmpID 
ORDER BY EmpID ASC

这将为您提供所需的输出,但我不确定您想要订购的是什么......我已经假设了EmpId。

我还假设了SQL Server。