私はカーソルに苦労しており、別のバージョンを試してみましたが、うまくいきませんでした。ここで助けを求めることにしました。IF条件を機能させるには? 何かを数えてから、この数が 10 より大きいかどうかを確認してから、何かを削除する必要があります。count(*) を IF 条件に渡して何かをする方法は? 前もって感謝します。
DECLARE
CURSOR MY_CURSOR
IS
SELECT CSH.STATUSCHANGEDDATE AS STATUSCHANGEDDATE_, CSH.CUSTOMER AS CUSTOMER_ from CUSTOMER_STATUSES csh WHERE
csh.STATUSCHANGEDATE>SOME_DATE AND CSH.STATUS = 'X_STATUS'
MY_RECORD MY_CURSOR%ROWTYPE;
BEGIN
OPEN MY_CURSOR;
LOOP
FETCH MY_CURSOR INTO MY_RECORD;
EXIT
WHEN MY_CURSOR%NOTFOUND;
SELECT COUNT(*) FROM SOME_TABLE WHERE SOME_DATE = STATUSCHANGEDDATE_ AND ....
iF ABOVE_COUNT = 10 THEN
DELETE * FROM SOME_TABLE2 WHERE SOME_CONDITION2
ELSE
END IF
END LOOP;
END LOOP;
COMMIT;
END;