SQL使用时间

时间:2017-08-16 15:22:25

标签: sql sql-server date select time

我有一个表,其中包含多个员工的定时活动数据。从该表中,我需要使用[day](date)和[time]列仅选择活动是给定sa_person的当天第一个活动的行。 [activity id]列对于事件序列不可靠,因为某些日期/时间是不按顺序手动输入的。

下面是起始表和所需结果的图像。

提前感谢您的帮助!

表格结构:

Table Structure

期望的结果:

Desired Result

1 个答案:

答案 0 :(得分:1)

您可以查询如下:

Select * from (
   Select *, RowN = Row_Number() over (partition by saperson, [Day] order by [time] asc) from yourtable ) a
Where a.RowN = 1

提供带有文本的数据总是更好,这样我们就可以检查数据......

你也可以使用带领带的top(1)

Select top(1) with ties * from yourtable
Order by Row_Number() over (partition by saperson, [Day] order by [time])