我有三列employeeID,intime和outtime。我想只获得第一个intime和最后一个时间。
表格结构:
EmployeeID Intime OutTime 1 2008-01-13 08:10:04.000 2008-01-13 09:03:42.000 2 2008-01-13 09:10:04.000 2008-01-13 10:03:20.000 3 2008-01-13 08:10:05.000 2008-01-13 09:03:45.000 1 2008-01-13 10:10:04.000 2008-01-13 11:03:42.000 1 2008-01-13 12:10:04.000 2008-01-13 13:03:30.000
我想要第一时间和最后一次外出时间
像 输出:
EmployeeID Intime OutTime 1 2008-01-13 08:10:04.000 2008-01-13 13:03:30.000
这是什么SQL查询。 请以书面形式提出查询。
由于
的Dinesh
答案 0 :(得分:0)
此查询应该为您提供当前日期的第一个intime,最后一个outtime(您可以在where子句中使用任何日期而不是getdate()来获取任何其他日期的详细信息。)
Select employeeid, Min(Intime) as Intime, Max(Outtime) as OUttime
from Yourtable
where CONVERT(VARCHAR(10),Intime,111) = CONVERT(VARCHAR(10),GETDATE(),111)
group by employeeid
答案 1 :(得分:0)
一种方法是(假设OutTime总是与InTime在同一天):
SELECT employeeID, CONVERT(VARCHAR(10), Intime, 112) AS TheDate, MIN(Intime) AS InTime, MAX(OutTime) AS OutTime
FROM YourTable t
GROUP BY employee, CONVERT(VARCHAR(10), Intime, 112)