Friday, July 8, 2011

Realtime Mass Table Row Count - When NUM_ROWS just isn't good enough

Using the XMLGEN package and EXTRACTVALUE you can run dynamic SQL's and get results back in a query!

SELECT USER
,B.OBJECT_NAME
,TO_NUMBER(EXTRACTVALUE(DBMS_XMLGEN.GETXMLTYPE('SELECT /*+ PARALLEL */ count(*) row_count from ' || USER || '.' || B.OBJECT_NAME || ' X')
,'ROWSET/ROW/ROW_COUNT/text()')) ROW_CNT
FROM USER_OBJECTS B

WHERE B.OBJECT_TYPE = 'TABLE'

ORDER BY 3

No comments:

Post a Comment