【发布时间】:2013-09-09 15:51:59
【问题描述】:
[重新构建先前的问题,该问题被提出为关于光标的问题。]
我正在寻找一种在特定日期条件下选择计数的方法。
假设有一个表 T1,有 2 个字段(ID、Date)。 ID 不是唯一键。该表按 id 记录事件,有些 id 经常出现,有些不经常出现。
例如:
ID | Date
1 | 2010-01-01
2 | 2010-02-01
3 | 2010-02-15
2 | 2010-02-15
4 | 2010-03-01
我想创建一个包含以下字段的新表:ID、日期、ID 出现在日期前 6 个月内的次数、ID 出现在日期后 6 个月内的次数。
本质上,对于现有表中的每一行,我想添加一列,用于回顾过去六个月内出现相同 ID 的次数,并展望未来六个月内出现相同 ID 的次数。
因此,该示例的输出有望类似于:
ID | Date | Lookback | Lookahead
1 | 2010-01-01 | 0 | 0
2 | 2010-02-01 | 0 | 1
3 | 2010-02-15 | 0 | 0
2 | 2010-02-15 | 1 | 0
4 | 2010-03-01 | 0 | 0
有没有最好的方法来制定适当的查询?
【问题讨论】:
-
您能否根据您发布的示例数据修改您的问题以包含预期输出?
-
什么查询?你没有描述查询,你描述了一个table?请澄清您的问题。
标签: sql sql-server tsql datetime