【发布时间】:2023-03-18 01:22:01
【问题描述】:
我在这里是因为如果有办法返回循环中的前一个值(光标)以与当前值进行比较,我无法找到其他任何地方,例如..
Cursor.Value = Cursor-1.Value;
这是因为我有几个合同号需要通过邮件发送到业务部门,但是,为了恢复所有行,我想比较当前合同号是否与上一个合同号相同并验证它不要发送重复的合同号。
为了不发送重复的“订单号”而跳过的记录示例:(Order_Number 是我的密钥,而不是顺序数字 id):
cCursor.Value = cCursor-1.Value
cCursor.(111) = cCursor-1.(111)
我要保存以便作为处理后的“订单号”发送的记录示例:(Order_Number 是我的密钥,而不是顺序数字 id):
cCursor.Value = cCursor-1.Value
cCursor.(132) = cCursor-1.(111)
我的问候。
【问题讨论】:
-
你的代码和光标是什么?为什么不只选择 DISTINCT 记录?
-
我不确定您的编辑是否澄清了任何事情。我猜你的伪代码是什么意思,但看起来你仍然在谈论想要使用
lag函数。但是你说这不是你感兴趣的,所以我有点困惑。如果您发布实际代码、示例数据、预期输出等,也许会更清楚。 -
这是因为所有的过程都发生在一个 for
FOR cisiOrder IN cGetCISINewOrders LOOP这是我的光标cGetCISINewOrders是从这里我拿走了我所有的order_numbers