【发布时间】:2020-11-17 14:10:53
【问题描述】:
我有带有 id、degree、roundAbout 和 action 的表格。我需要根据下一行的程度和动作值更新动作。 为了解释,需要做这样的事情。如果当前度数小于下一行度数且 roundAbout 为“N”,则操作应设置为“TurnRight”,如果当前度数大于下一行度数且 roundAbout 为“N”,则操作应设置为“TurnLeft”,如果 nxt行 roundAbout 为 'y' 那么无论度数动作都应设置为 'FollowRoundAbout'
我如何做到这一点? 这是我的表的例子
ID | degree | roundabout|
----------------------------
1 | 30 | N |
2 | 130 | N |
3 | 330 | N |
4 | 210 | N |
5 | 30 | Y |
My expected table would be
ID | degree | roundabout| action|
-----------------------------------------
1 | 30 | N | RIGHT
2 | 130 | N | RIGHT
3 | 330 | N | LEFT
4 | 210 | N | FollowRound
5 | 30 | Y | Stop
【问题讨论】:
-
如果您不使用 MySql 8.0+,您可以使用滚动变量来存储前一行的
degree和roundabout值,同时通过 @987654324 对表进行迭代@