我有一个数据库,其中有一个记录表,用于存储一系列临时事务和已完成事务之间的时间戳。
它以一种非常奇怪的方式存储在数据库中,这给我带来了问题。
让我们以接力赛为例。这就是数据的记录方式。
RACE TIME RUNNER FINISHTIME
1 2011-09-28 11:27:01.437 1 2011-09-28 17:19:00.843
1 2011-09-28 12:35:33.427 2 2011-09-28 17:19:00.843
1 2011-09-28 12:36:15.270 3 2011-09-28 17:19:00.843
“时间”表示接力棒的传递和最后一名跑者完成的时间。
所以单个跑步者的时间背后的数学是:
Time(Runner_n) = Time(Runner_n+1) - Time (Runner_n)
除了终点赛跑者,没有 n+1 记录。他们得到:
Time(Runner_final) = FinishTime - Time(final)
我将尝试创建一个新表并使用游标遍历每场比赛——尝试存储以下元组:Race、RunnerID、TimeCompleted。