DEV Community

Query Filter
Query Filter

Posted on

create7

WITH params AS (
    SELECT SYSDATE - 45 AS cutoff_date FROM dual
),
tables_with_col AS (
    SELECT table_name
    FROM   user_tab_columns
    WHERE  UPPER(column_name) = 'INTERNTIMESTAMP'
      AND  data_type LIKE 'TIMESTAMP%'
)
SELECT 
    table_name,
    rows_last_45_days
FROM tables_with_col t,
     LATERAL(
         SELECT COUNT(*) AS rows_last_45_days
         FROM   TABLE(CAST(MULTISET(
                    SELECT 1 
                    FROM   t.table_name src
                    WHERE  src.INTERNTIMESTAMP >= (SELECT cutoff_date FROM params)
                ) AS SYS.ODCINUMBERLIST))
     ) cnt
ORDER BY rows_last_45_days DESC, table_name;
Enter fullscreen mode Exit fullscreen mode

Top comments (0)