小编aka*_*ter的帖子

查找开始日期早于前一个结束日期的所有行

有没有办法根据用户撤回所有具有重叠日期时间的记录?

例如;

TableA具有以下行;

TrainerID            StartTime            EndTime
1234                 10-1-2015 08:30      10-1-2015 09:00 
1234                 10-1-2015 08:45      10-1-2015 09:15
1234                 10-1-2015 09:30      10-1-2015 10:00
2345                 10-1-2015 08:45      10-1-2015 09:15
2345                 10-1-2015 09:30      10-1-2015 10:00
Run Code Online (Sandbox Code Playgroud)

我需要一个只能提取以下记录的查询,因为它的开始时间是在培训师的上一个结束时间之前(双重预订):

1234                 10-1-2015 08:45      10-1-2015 09:15
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2012

5
推荐指数
1
解决办法
705
查看次数

在SQL Server 2012中更新数百万条记录

我认为通过包含几个表格可以更容易解释.

表A:

UserId     StoreId
1          10
2          20
3          30
4          40
Run Code Online (Sandbox Code Playgroud)

表B:

UserId     StoreId
1          10
1          20
1          20
2          20
2          10
2          10
3          30
3          40
3          40
4          40
4          30
4          30
Run Code Online (Sandbox Code Playgroud)

我需要一个将进入表2的脚本,并更新存储以匹配该StoreId特定用户的表A. 最后,我应该看到;

表B:

UserId     StoreId
1          10
1          10
1          10
2          20
2          20
2          20
3          30
3          30
3          30
4          40
4          40
4          40
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,考虑到表B中有数亿行,而表A有大约2000万行,最简单的方法是什么?

提前致谢!

sql t-sql sql-server-2012

1
推荐指数
1
解决办法
49
查看次数

标签 统计

sql ×2

sql-server-2012 ×2

t-sql ×2

sql-server ×1