Oracle 查詢數據庫表的數量

Oracle 查詢數據庫表(查看當前用戶下的表)的數量

SELECT count(*)
FROM sys.user_tables;

 

 

統計表中記錄數量

 

第一步:新增count_rows 函數

    CREATE OR REPLACE FUNCTION count_rows (
        table_name IN varchar2,
        owner IN varchar2 := NULL
    )
    RETURN number AUTHID current_user
    AS
    num_rows number;
        stmt varchar2(2000);
    BEGIN
        IF owner IS NULL THEN
            stmt := 'select count(*) from "' || table_name || '"';
        ELSE
            stmt := 'select count(*) from "' || owner || '"."' || table_name || '"';
        END IF;
        EXECUTE IMMEDIATE stmt INTO num_rows;
        RETURN num_rows;
    END;

第二步:調用count_rows 函數,統計各種表的記錄數

    select table_name, count_rows(table_name) nrows from user_tables
    order by nrows desc;

 

 


————————————————
鏈接:https://blog.csdn.net/zhouzhiwengang/article/details/110862492

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章