不同資料庫中查詢Table占用空間的大小

2021-04-25 08:10:42 字數 997 閱讀 5991

以下**網路:

oracle和db2都支援分割槽表,但是我們得知道什麼樣的表適合使用分割槽表技術,oracle的官方建議是超過2g的table就要使用分割槽表。

下面來總結一下,各種資料庫中如何獲得這些大小資訊:

oracle 10g中:

查詢出當前使用者的表所占用的空間大小,並按大小進行降序排列:

select segment_name,sum(bytes)/1024/1024 from user_extents group by segment_name order by sum(bytes)/1024/1024 desc

select segment_name,sum(bytes)/1024/1024 from user_extents where segment_type='table' group by segment_name order by sum(bytes)/1024/1024 desc ;

select segment_name,sum(bytes)/1024/1024 from user_extents where segment_type='index' group by segment_name order by sum(bytes)/1024/1024 desc ;

查詢出系統表空間的大小,並按大小進行降序排列(需要sysdba的許可權):

select tablespace_name,sum(bytes)/1024/1024 from dba_segments group by tablespace_name order by sum(bytes)/1024/1024 desc

這個在oemc中也可以看,但是如果沒有裝的話,sql語句還是比較方便的。

db2中:

檢視某個table的大小可以在控制中心中用圖形介面檢視。

對應的sql語句是什麼?誰能告訴我一下?

sql server中:

執行統計並檢視指定表名的表大小:

exec sp_spaceused '表名', true;

不同資料庫中查詢Table占用空間的大小

以下 網路 oracle和db2都支援分割槽表,但是我們得知道什麼樣的表適合使用分割槽表技術,oracle的官方建議是超過2g的table就要使用分割槽表。下面來總結一下,各種資料庫中如何獲得這些大小資訊 oracle 10g中 查詢出當前使用者的表所占用的空間大小,並按大小進行降序排列 selec...

MySQL不同表查詢,不同資料庫查詢

內容比較弱 歡迎大神們指點 在mysql中 要實現不同表的查詢和不同資料庫的查詢,首先得有地方查吧 1 建立資料庫 create databaes test use test create table pet id int,name varchar 20 create table user id i...

不同資料庫中的分頁查詢方法

不同資料庫中的分頁查詢方法 在實際應用中,往往能碰到分頁的需求。雖然有不少元件可以實現物件導向的分頁,但是都是利用了快取。很多時候,這些方法是不可用的。原因很簡單,在乙個資料量非常大的應用中,快取全部資料無論是對網路傳輸還是對記憶體都是不小的浪費。所以,還是回歸自然吧,利用分頁查詢來獲取當前頁的資料...