Bagaimana saya bisa memperkirakan ukuran tabel dalam skema (Oracle)


11

Saya mencoba memperkirakan ukuran tabel dalam skema saya (dalam MB). Inilah yang saya miliki sejauh ini:

SELECT table_name, owner, last_analyzed
FROM all_tables

Saya cukup baru untuk SQL jadi saya tidak tahu bagaimana saya akan berkeliling melakukan ini.

Terima kasih.

Jawaban:


10

Lihatlah tampilan "dba_segments" (atau user_segments jika Anda tidak memiliki hak dba). Kueri berikut akan memberi Anda apa yang Anda cari:

select
  owner as "Schema"
  , segment_name as "Object Name"
  , segment_type as "Object Type"
  , round(bytes/1024/1024,2) as "Object Size (Mb)"
  , tablespace_name as "Tablespace"
from dba_segments
order by owner;

Hai Benoit, itu bekerja dengan baik, terima kasih. Saya melihat bidang tabel yang bisa saya gunakan, tetapi saya tidak dapat menemukan "Pemilik" atau bidang yang terakhir diperbarui. Omong-omong, saya menggunakan tampilan user_segments. Apakah informasi ini tersedia di bawah dba_segments?
Diego R

Semua segmen yang ditampilkan di user_segments dimiliki oleh akun yang Anda gunakan untuk login, itu sebabnya tidak ada kolom pemilik.
Benoit
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.