我有一个名为 Event_log 的主表,其中包含此查询所需的所有记录。在这张表中,有一列我称之为“Grp”。为简化起见,假设这个 Grp 只有两个可能的值:A 和 B。所以现在我们有一个表 Event_log,其中有一列“Grp”和一列称为“实际日期”。最后,我想在此表中再添加一个 Flag 列,其工作原理如下。
首先,我按日期降序排列所有记录,如下所示。然后,我想用 1 或 0 标记每个组“A”行。对于所有“A”行,如果前一条记录(日期较早)=“B”行,那么我想标记 1。否则标记 a 0. 所以这个初始表在设置这个标志之前看起来像这样:
Actual Date Grp Flag
1-29-13 A
12-27-12 B
12-26-12 B
12-23-12 A
12-22-12 A
但是在完成这些计算之后,它应该是这样的:
Actual Date Grp Flag
1-29-13 A 1
12-27-12 B NULL
12-26-12 B NULL
12-23-12 A 0
12-22-12 A 0
我怎样才能做到这一点?这比查询更简单!