triggers删除问题与partition by

kiken10 kiken10 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我将table中的某一笔资料删除后

想要在triggers中将最靠近(删除的那笔资料),的某个栏位值变成null

为什么triggers中却无法使用partition by呢??

程式码如下
IF DELETING THEN
UPDATE aaa D
SET D.a =''
WHERE D.b = (
SELECT b FROM (select T.*,row_number() over (partition by dep order by date_1,time_1 DESC) P from aaa t )→错误会在这
WHERE dep = :OLD.dep
WHERE a = 'n'
AND P = 1)
AND D.date_1 = (
SELECT date_1 FROM (select T.*, row_number() over (partition by dep order by date_1,time_1 DESC) NUM from aaa t)→错误会在这
WHERE dep = :OLD.dep
AND a = 'n'
AND NUM = 1);

END IF;

table资料如下
dep date_1 time_1 b
a 20110512 12:30 y
a 20110512 14:40 y
a 20100530 13:00 →我把这笔删除后,系统会把20110512,4:40这笔的b栏位改成null

请问在triggers中我该如何修改这段程式码,或是有更精简的方法可以让我完成我需要的资料,拜托了谢谢..
...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
kiken10
基础和管理 17,379 成员 95,111 内容