我有几个链接表,我正在尝试查找其中一个子表在具有给定值的行中有 3 个(或一些用户设置的参数)记录的数据集,其中排序是按日期(在另一个链接表)
Table1
ID LinkID Flag
AA1 AA 30
AA2 AA 30
AA3 AA 60
AA4 AA 30
BB1 BB 30
BB2 BB 30
BB3 BB 30
BB4 BB 40
Table2
TA1 CA 2/1/2013
TA2 CA 1/1/2013
TA3 CA 12/1/2012
TA4 CA 11/1/2012
TB1 CB 2/2/2013
TB2 CB 1/1/2013
TB3 CB 12/1/2012
TB4 CB 11/2/2012
其他表将它们链接在一起,但我可以将 AA 链接到 CA 记录,因此连接的结果集具有
AA 30 2/1/2013
AA 30 1/1/2013
AA 60 12/1/2012
AA 30 11/1/2012
BB 30 1/1/2013
BB 30 2/2/2013
BB 30 12/1/2012
BB 40 11/2/2012
我如何查询,以便如果他们想要最后 3 个连续“30”记录的记录,我只得到 BB,但如果他们想要最后 2 个连续“30”记录的集合,我两个都得到?而且,当然,对于最近记录中没有标记为 30 的任何数据,我从来没有得到这些数据?
我从连接十几个表的现有查询开始,并根据最新的 30 个表返回数据,并显示前一个。我认为对于这个修改,我需要完全重新组织它,但我对如何处理它持空白,我认为上面显示了我正在尝试做的事情。
我不需要工作 sql(无论如何我都没有提供足够的数据示例),而是一个 sql 伪代码,它显示了如何根据在另一个间接链接表中找到的顺序来查找具有给定值的连续记录。或者,就此而言,如果它都在一个表中,如何获取它,如上面的结果集。