单位的老数据库表空间满了,整理了清理缩减语句,备忘
--查询表-占用表空间的大小
select 'drop table ' || segment_name || ' purge;', sum(bytes)/1024/1024 Mbytese from user_segments a , user_tables b
where segment_type='TABLE' and a.segment_name=b.TABLE_NAME and b.COMPRESSION='DISABLED'
group by segment_name,COMPRESSION order by sum(bytes)/1024/1024 desc;
select distinct trandate from JXXX order by trandate;
--查询某表的使用空间
SELECT table_name,
ROUND((blocks * 8/1024), 2) "高水位空间 M",
ROUND((num_rows * avg_row_len / 1024/1024), 2) "真实使用空间 M",
ROUND((blocks * 10 / 100) * 8, 2) "预留空间(pctfree) M",
ROUND((blocks * 8 - (num_rows * avg_row_len / 1024) -blocks * 8 * 10 / 100), 2) "浪费空间 M",
((blocks * 8-(num_rows * avg_row_len / 1024))/1024)/(blocks * 8/1024) "浪费空间 %"
FROM user_tables
WHERE table_name = 'JXXX';
--查看标识
select row_movement from user_tables where table_name='JXXX';--DISABLED
--开启