我会尽力解释我的奇怪情况。我有一堆数据记录到十分之一秒。从时间 X 开始,几乎每秒都会发生一个事件。每一秒都被认为是一个“事件窗口”。记录的时间是从 X 开始的经过时间。使用第一条记录作为“种子”,我只需要从 X.X+1、X+2、X+3 返回每隔一秒窗口记录的第一条记录, X+4 等。
targets
--------------------------
| id | time | name |
|-----|------ |-----------
| 1 | 1.0 | target01 |
| 2 | 1.1 | target01 |
| 3 | 1.2 | target01 |
| 4 | 1.3 | target01 |
| 5 | 1.4 | target01 |
| 6 | 1.5 | target01 |
| 7 | 1.6 | target01 |
| 8 | 1.7 | target01 |
| 9 | 1.8 | target01 |
| 10 | 1.9 | target01 |
| 11 | 2.0 | target01 |
| 12 | 2.1 | target01 |
| 13 | 2.2 | target01 |
...
| 50 | 4.9 | target01 |
| 51 | 5.3 | target01 |
| 52 | 5.4 | target01 |
| 53 | 5.5 | target01 |
| 54 | 5.6 | target01 |
| 55 | 5.7 | target01 |
| 56 | 5.8 | target01 |
| 57 | 5.9 | target01 |
| 58 | 6.0 | target01 |
| 59 | 6.1 | target01 |
| 60 | 6.2 | target01 |
| 61 | 6.3 | target01 |
| 62 | 6.4 | target01 |
--------------------------
我将如何得到这个作为回报:
--------------------------
| id | time | name |
|-----|------ |-----------
| 1 | 1.0 | target01 |
| 11 | 2.0 | target01 |
| 21 | 3.0 | target01 |
| 31 | 4.0 | target01 |
| 51 | 5.3 | target01 |
| 58 | 6.0 | target01 |
--------------------------
请注意,记录 51 位于 5.3 秒处。它是落在该四秒窗口 (X+4) 内的第一条记录。
糟糕的数据库规划,但我被困在继承混乱中。想法?