首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找连续几周的人员将显示在表中

查找连续几周的人员将显示在表中
EN

Stack Overflow用户
提问于 2016-12-01 04:32:01
回答 1查看 156关注 0票数 1

我需要找出一个人在表中连续出现了多少周,从本周开始。

该表有一个ID和一个插入日期。如果一个人被插入到表中,我需要计算他们在前一周是否在那里,如果是的话,在那之前连续几周。

我已经尝试了一些我搜索过的gap-I技术,但都无济于事。有什么想法吗?

编辑SQL Server 2012

代码语言:javascript
复制
ID-PK (int)
PersonID (int)
CourseNumber (varchar(15))
Term (char(5))
InsertDate (datetime)

Sample Data
250029 - 507 - 541 - Q2 - 2016-11-27
250028 - 507 - 541 - Q2 - 2016-11-20
250027 - 507 - 541 - Q2 - 2016-11-13
250027 - 507 - 541 - Q2 - 2016-10-13

因此,在此数据的示例中,我想检索"3“作为答案,因为在2016年10月13日和2016年11月13日之间的休息时间之前,该人连续三周出现在表格中。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-12-01 17:40:00

可能的方法是添加一个由WeekNumber和PersonName分区的RowID (https://msdn.microsoft.com/en-us/library/ms186734.aspx)。

然后将结果连接回其自身,其中PersonName = PersonName,RID = RID + 1。然后按PersonName计算结果数。

这将为那些连续工作几周但不超过2周的人提供一个答案。需要数据才能获得完整的工作脚本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40897634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档