1. スプライス削除
SELECT
'TRUNCATE TABLE ' || listagg || ';'
FROM
(
SELECT
LISTAGG(TABLE_NAME, ',') WITHIN GROUP(
ORDER BY
TABLE_NAME
) listagg
FROM
USER_TABLES T
WHERE
T.TABLE_NAME != 'TASK_APP'
AND T.TABLE_NAME != 'TASK_MANAGER'
AND T.TABLE_NAME LIKE 'T_%'
)
2. 循環削除
BEGIN
FOR I IN (
SELECT
TABLE_NAME
FROM
USER_TABLES T
WHERE
T.TABLE_NAME != 'TASK_APP'
AND T.TABLE_NAME != 'TASK_MANAGER'
AND T.TABLE_NAME LIKE 'T_%') LOOP
EXECUTE IMMEDIATE 'TRUNCATE TABLE ' || I.TABLE_NAME;
END LOOP;
END;