我有這樣的表(簡化的):MySQL的 - 插入行跳過的號碼(內插)
+------+--------+
| tick | value |
+------+--------+
| 1 | 10 |
| 2 | 20 |
| 5 | 50 |
| 7 | 10 |
| 10 | 85 |
+------+--------+
我要生成另一個表,該表包括所有數字從min(tick)
到max(tick)
蜱值:
+------+--------+
| tick | value |
+------+--------+
| 1 | 10 | * already exists
| 2 | 20 | * already exists
| 3 | 30 | = 20 + 10
| 4 | 40 | = 30 + 10
| 5 | 50 | = 40 + 10 * already exists
| 6 | 30 | = 50 - 20
| 7 | 10 | = 30 - 10 * already exists
| 8 | 35 | = 10 + 25
| 9 | 60 | = 35 + 25
| 10 | 85 | = 60 + 25 * already exists
+------+--------+
需要明確的是,
- 我有非連續刻度值,並希望插入缺少的刻度。
- 我想這樣做另一個表,所以原始表不會被修改。
value
s丟失tick
s增加/減少相等的步驟從先前存在的滴答到下一個現有滴答。作爲psudo配方:
increment = (next_value - current_value)/(next_tick - current_tick)
如何管理呢?
您的環境是什麼?純SQL解決方案可能比涉及其他層的解決方案要多得多。 –
我知道,但我必須使用SQL來執行此操作。我正在使用Java,但這將是第二個計劃。 – mmdemirbas