獲取Oracle表大小的三種方法
直接查詢段大小
表的存儲(chǔ)空間信息存儲(chǔ)在段(Segment)中,通過(guò)以下 SQL 可以獲取表的大?。ò瑪?shù)據(jù)、索引、LOB 等占用的空間)
SELECT
segment_name AS table_name,
bytes,
ROUND(bytes / 1024 / 1024, 2) AS size_mb
FROM
user_segments -- 根據(jù)權(quán)限替換為 dba_segments 或 all_segments
WHERE
segment_type = 'TABLE'
AND segment_name = 'AI_TOOLS';

確保表名使用大寫(xiě),因?yàn)?Oracle 數(shù)據(jù)字典默認(rèn)存儲(chǔ)大寫(xiě)對(duì)象名。
bytes字段表示分配的存儲(chǔ)空間,可能包含未使用的塊。若表有分區(qū),需查詢
DBA_TAB_PARTITIONS視圖獲取各分區(qū)大小。
計(jì)算表數(shù)據(jù)估算大小(基于統(tǒng)計(jì)信息)
結(jié)合 DBA_TABLES 中的行數(shù)和平均行長(zhǎng)估算數(shù)據(jù)量(需更新統(tǒng)計(jì)信息):
BEGIN
DBMS_STATS.GATHER_TABLE_STATS(
ownname => 'NEW_USER',
tabname => 'AI_TOOLS'
);
END;
/
SELECT
table_name,
num_rows,
avg_row_len,
ROUND((num_rows * avg_row_len) / 1024 / 1024, 2) AS estimated_size_mb
FROM
user_tables
WHERE
table_name = 'AI_TOOLS';
匯總表及索引的總大小
SELECT
'TABLE' AS segment_type,
segment_name,
bytes AS table_size_bytes,
ROUND(bytes / 1024 / 1024, 2) AS table_size_mb
FROM
user_segments
WHERE
segment_type = 'TABLE'
AND segment_name = 'YOUR_TABLE_NAME'
UNION ALL
SELECT
'INDEX' AS segment_type,
segment_name,
bytes AS index_size_bytes,
ROUND(bytes / 1024 / 1024, 2) AS index_size_mb
FROM
user_segments
WHERE
segment_type = 'INDEX'
AND segment_name IN (
SELECT index_name
FROM user_indexes
WHERE table_name = 'YOUR_TABLE_NAME'
);到此這篇關(guān)于獲取Oracle表大小的三種方法的文章就介紹到這了,更多相關(guān)獲取Oracle表大小內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
oracle設(shè)置密碼復(fù)雜度及設(shè)置超時(shí)退出的功能
我們都知道密碼策略加固的參數(shù)一般包括密碼長(zhǎng)度、復(fù)雜度檢測(cè)、最大最小使用時(shí)間、過(guò)期警報(bào)時(shí)間、最大登錄失敗次數(shù)以及鎖定時(shí)間等設(shè)置,下面這篇文章主要給大家介紹了關(guān)于oracle設(shè)置密碼復(fù)雜度及設(shè)置超時(shí)退出功能的相關(guān)資料,需要的朋友可以參考下2022-06-06
Oracle 11g數(shù)據(jù)庫(kù)安裝與卸載的方法圖解
如果小編使用的是win7系統(tǒng),最好采用11g,否則很可能10g出現(xiàn)不兼容安裝不成功的情況。下面給大家分享Oracle 11g數(shù)據(jù)庫(kù)安裝與卸載的方法圖解,非常不錯(cuò),感興趣的朋友一起看看吧2016-09-09
Oracle對(duì)兩個(gè)數(shù)據(jù)表交集的查詢
Oracle對(duì)兩個(gè)數(shù)據(jù)表交集的查詢...2007-03-03
oracle定時(shí)備份壓縮的實(shí)現(xiàn)步驟
本篇文章是對(duì)oracle定時(shí)備份壓縮的實(shí)現(xiàn)步驟進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
oracle 層次化查詢(行政區(qū)劃三級(jí)級(jí)聯(lián))
現(xiàn)在將上面的行政區(qū)劃按代碼分為三個(gè)級(jí)別:?。ê笏奈粸?)/市(后兩位為0)/縣,同時(shí)分別標(biāo)出他們的級(jí)別,這樣的話,便于后期根據(jù)不同的級(jí)別查詢。2009-07-07
Oracle數(shù)據(jù)庫(kù)的啟動(dòng)實(shí)現(xiàn)過(guò)程
Oracle數(shù)據(jù)庫(kù)啟動(dòng)分nomount、mount、open三階段,各階段需不同文件并執(zhí)行特定操作,停庫(kù)有正常、事務(wù)級(jí)、立即、強(qiáng)制四種方式,影響數(shù)據(jù)庫(kù)狀態(tài)及數(shù)據(jù)一致性2025-08-08

