Oracle之常用查詢語句


 --查詢表下所有父分區
 SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME='tablename';

 --------------------------------------
 --查詢表下的所有子分區
 SELECT * FROM USER_TAB_SUBPARTITIONS WHERE TABLE_NAME='tablename';

 --------------------------------------
 --刪除指定分區
 alter table tablename drop partition(P2019);

 --------------------------------------
 --查詢指定分區數據
 select count(*) from tablenpartition(P1);  

 -------------------------------------
 --查找指定日期的數據
 select * from tablenameb where b.statisticstime between to_date('2018-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2018-12-31 00:00:00','yyyy-mm-dd hh24:mi:ss')
 
 -------------------------------------
 --查看job狀態
 SELECT * FROM DBA_DATAPUMP_JOBS 
 
 -------------------------------------
 --查看指定名稱的job
 select * from user_jobs where job='526';
 
 -------------------------------------
 --游標查詢字段測試
 select to_char(bjch.TJSJ, 'yyyy') dt from tablename bjch group by to_char(bjch.TJSJ, 'yyyy') order by to_char(bjch.TJSJ, 'yyyy');

 --------------------------------------
 --導出數據庫指定表數據
  exp ntswl/ntswl@orcl file=d:\tablename.dmp tables=(tablename)

 --------------------------------------
 --導入指定表數據 表存在則導入數據
  imp signal/signal@orcl file=d:\tj11001.dmp tables=(tablename) ignore=y

 --------------------------------------
 --刪除指定表
 drop table tablename

 --------------------------------------
 --查詢語句
 select count(*) from tablename

 --------------------------------------
 --查詢索引
 select * from user_ind_columns where table_name = 'tablename'
 and column_name = 'username';

 ---------------------------------------
 --查看索引名稱 
 select * from user_indexes where index_name = 'SYS_C00150530'

 ---------------------------------------
 --刪除指定索引
 --(無法刪除,唯一約束)
 drop index SYS_C00154024;

 ----------------------------------------
 --查詢表下的所有分區
 SELECT * FROM USER_TAB_PARTITIONS WHERE TABLE_NAME='tablename';

 ----------------------------------------
 --刪除指定分區
 alter table tablename drop partition(P4);

 -----------------------------------------
 --查看索引是否有效
 select status,T.* from user_indexes T where table_name='tablename'

 -----------------------------------------
 --會話
 select l.session_id,o.owner,o.object_name from v$locked_object l,dba_objects o where l.object_id=o.object_id
 
 -----------------------------------------
 --會造成wait的會話
 select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid order by t2.logon_time;

 -----------------------------------------
 --結束指定會話
 alter system kill session '1258,34133';
 
 -----------------------------------------
 --查看指定名稱的存儲過程文本
 select text from user_source where type='PROCEDURE' and name='CREATEPARTITION_BJZH';
 
 -----------------------------------------
 --強制結束會話
 alter system kill session '5344,9737' immediate;
 
 -----------------------------------------
 --查看表空間大小
 SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size 
 FROM dba_tablespaces t, dba_data_files d 
 WHERE t.tablespace_name = d.tablespace_name 
 GROUP BY t.tablespace_name; 
 
 ------------------------------------------
 --查詢刪除的內容
 select * from user_recyclebin where ORIGINAL_NAME > '2018-10-18 15:00:00';
 
 ------------------------------------------
 --查詢刪除的表
 select * from user_recyclebin t where t.TYPE='TABLE'
 
 ------------------------------------------
 --查詢指定表空間
 SELECT T.TABLESPACE_NAME,D.FILE_NAME,D.AUTOEXTENSIBLE,D.BYTES,D.MAXBYTES,D.STATUS 
 FROM DBA_TABLESPACES T,DBA_DATA_FILES D 
 WHERE T.TABLESPACE_NAME =D.TABLESPACE_NAME 
 and T.TABLESPACE_NAME='username'
 ORDER BY TABLESPACE_NAME,FILE_NAME;

 -------------------------------------------------------------------
 --查詢表空間大小以及使用比
 SELECT UPPER(F.TABLESPACE_NAME) "表空間名",
       D.TOT_GROOTTE_MB "表空間大小(M) ",
       D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空間(M)",
       TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,
                     2),
               '990.99') "使用比",
       F.TOTAL_BYTES "空閑空間(M) ",
       F.MAX_BYTES "最大塊(M) "
  FROM (SELECT TABLESPACE_NAME,
               ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
               ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
          FROM SYS.DBA_FREE_SPACE
         GROUP BY TABLESPACE_NAME) F,
       (SELECT DD.TABLESPACE_NAME,
               ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
          FROM SYS.DBA_DATA_FILES DD
         GROUP BY DD.TABLESPACE_NAME) D
 WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
 ORDER BY 4 DESC
 
 ----------------------------------------------------------
 --增加數據文件並允許自動增長 
 ALTER TABLESPACE TRAFFICINDEX ADD DATAFILE 
 'D:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\TRAFFICINDEX.DBF' SIZE 1024M AUTOEXTEND ON NEXT 8M MAXSIZE 10240M;
 
 -----------------------------------------
 --查詢觸發器
 select * from all_triggers where table_name='tablename';  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM