V_ONE_MSC_RECORD PB_MSC_KQI_RTKPI_MIN%ROWTYPE; --MSC记录类型
V_MAX_TIME NUMBER(10); --告警表中最大的发生时间
......
SELECT MAX(OCCURTIME) INTO V_MAX_TIME FROM OC_ALARM;
IF V_MAX_TIME IS NULL THEN
V_MAX_TIME := 0;
END IF;
CURSOR C_MSC IS
--查询表中不重复的记录,以最新(即rowid最大)的记录为准
SELECT * FROM PB_MSC_KQI_RTKPI_MIN P1 WHERE ROWID = (
SELECT MAX(ROWID) FROM PB_MSC_KQI_RTKPI_MIN P2 WHERE P1.MSCNO = P2.MSCNO
)
AND (P1.STARTTIME + 60) > V_MAX_TIME;
......
--开始对msc新增记录进行循环
FOR V_ONE_MSC_RECORD IN C_MSC
LOOP
BEGIN
此处可以使用V_ONE_MSC_RECORD.column_name, 的形式,访问一行的数据,可以直接处理,也可以调用其他的存储过程
END;
END LOOP;