16 oracle其它实用技巧(1)

一。背景及代码实现

1.查看oracle版本,表所占用空间,最大连接数,活动用户和表空间占用情况,数据文件存放路径等(有些查询需要管理员的权限)

--查看版本
select *  from V$VERSION;
--查看表所占用的空间
SELECT TABLE_NAME, NUM_ROWS,
BLOCKS*8/1024/1024 "Size M"
FROM DBA_TABLES
WHERE TABLE_NAME='STU';
--查看oracle最大连接数()
SELECT SESSIONS_MAX,SESSIONS_CURRENT,SESSIONS_HIGHWATER,USERS_MAX FROM V$LICENSE;
--查看并统计当前活动用户
SELECT USERNAME,COUNT(USERNAME) FROM V$SESSION GROUP BY USERNAME;
--查看表空间占用情况
SELECT
B.TABLESPACE_NAME 表空间名,
B.BYTES 字节数,
(B.BYTES-SUM(NVL(A.BYTES,0))) 已使用,
SUM(NVL(A.BYTES,0)) 剩余空间,
SUM(NVL(A.BYTES,0))/(B.BYTES)*100 剩余百分比
FROM DBA_FREE_SPACE A,DBA_DATA_FILES B
WHERE A.FILE_ID=B.FILE_ID
GROUP BY B.TABLESPACE_NAME,B.FILE_ID,B.BYTES
ORDER BY B.FILE_ID;
--查看数据文件存放路径
SELECT FILE_ID,TABLESPACE_NAME,BYTES/1024/1024 FSIZE,FILE_NAME
FROM DBA_DATA_FILES ORDER BY FILE_ID;

2.查询按照中文笔画排序(或者拼音排序)

--按照笔画排序
SELECT BISUSERNAME ,USERFULLNAME 姓名 FROM ctxsys_bisnet_users
ORDER BY NLSSORT(USERFULLNAME,'NLS_SORT = SCHINESE_STROKE_M');

*NLSSORT是一个排序函数,参数值NLS_SORT的值如下所示:

● SCHINESE_RADICAL_M按照部首(第一顺序)、笔画(第二顺序)排序。
● SCHINESE_STROKE_M按照笔画(第一顺序)、部首(第二顺序)排序。
● SCHINESE_PINYIN_M按照拼音排序。

3.修改数据库默认日期格式

--查询
SELECT SYSDATE FROM DUAL;
--更改格式,只对当前会话有效
ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';
SEELCT CURRENT_DATE FROM DUAL;
--详细日期信息
SELECT SYSTIMESTAMP FROM DUAL;

4.将查询结果导出到文本文件(sqlplus中  PLSQL不支持)

SPOOL F:\DATA.TXT;
SELECT * FROM TABLE1;
SPOOL OFF;

5.跟踪sql语句执行(sqlplus中  PLSQL不支持)

set autotrace on;
select * from CTXSYS_BISNET_USERS t

 

你可能感兴趣的:(oracle数据库,Oracle数据库系列学习,查询按照中文笔画或者拼音排序,修改数据库默认日期格式,查询结果导出到文本,跟踪sql)