我正在尝试使用以下代码设置列:
declare before int;
set before = (
select X.delivery
from delivery as X
where X.delivery_id < NEW.delivery_id LIMIT 1
);
set NEW.delivery_col = before + 1;
我的目标是在新行之前获得一行并将值设置为1;
如果我用一个数字设置变量(例如:2)它可以工作,但它不能用于选择。
知道我在搞什么?
谢谢。
答案 0 :(得分:0)
您可以使用MAX()
函数获取最大值并为其添加1,例如:
set before = SELECT MAX(delivery) FROM delivery;
set NEW.delivery_col = before + 1;
或者
set NEW.delivery_col = SELECT MAX(delivery) + 1 FROM delivery;
答案 1 :(得分:0)
@Low Rider,您在评论中粘贴的代码存在一些问题。
尝试一下:
bookType:"xlsm"