⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oracle常用傻瓜问题1000问.txt

📁 oracle常用傻瓜问题1000问
💻 TXT
📖 第 1 页 / 共 5 页
字号:
144. 如何加密ORACLE的存储过程? 
下列存储过程内容放在AA.SQL文件中 
create or replace procedure testCCB(i in number) as 
begin 
dbms_output.put_line('输入参数是'||to_char(i)); 
end; 

SQL>wrap iname=a.sql; 
PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001 
Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved. 
Processing AA.sql to AA.plb 
运行AA.plb 
SQL> @AA.plb ; 

145. 如何监控事例的等待? 
select event,sum(decode(wait_Time,0,0,1)) "Prev", 
sum(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot" 
from v$session_Wait 
group by event order by 4; 

146. 如何回滚段的争用情况? 
select name, waits, gets, waits/gets "Ratio" 
from v$rollstat C, v$rollname D 
where C.usn = D.usn; 

147. 如何监控表空间的 I/O 比例? 
select B.tablespace_name name,B.file_name "file",A.phyrds pyr, 
A.phyblkrd pbr,A.phywrts pyw, A.phyblkwrt pbw 
from v$filestat A, dba_data_files B 
where A.file# = B.file_id 
order by B.tablespace_name; 

148. 如何监控文件系统的 I/O 比例? 
select substr(C.file#,1,2) "#", substr(C.name,1,30) "Name", 
C.status, C.bytes, D.phyrds, D.phywrts 
from v$datafile C, v$filestat D 
where C.file# = D.file#; 

149. 如何在某个用户下找所有的索引? 
select user_indexes.table_name, user_indexes.index_name,uniqueness, column_name 
from user_ind_columns, user_indexes 
where user_ind_columns.index_name = user_indexes.index_name 
and user_ind_columns.table_name = user_indexes.table_name 
order by user_indexes.table_type, user_indexes.table_name, 
user_indexes.index_name, column_position; 

150. 如何监控 SGA 的命中率? 
select a.value + b.value "logical_reads", c.value "phys_reads", 
round(100 * ((a.value+b.value)-c.value) / (a.value+b.value)) "BUFFER HIT RATIO" 
from v$sysstat a, v$sysstat b, v$sysstat c 
where a.statistic# = 38 and b.statistic# = 39 
and c.statistic# = 40; 

151. 如何监控 SGA 中字典缓冲区的命中率? 
select parameter, gets,Getmisses , getmisses/(gets+getmisses)*100 "miss ratio", 
(1-(sum(getmisses)/ (sum(gets)+sum(getmisses))))*100 "Hit ratio" 
from v$rowcache 
where gets+getmisses <>0 
group by parameter, gets, getmisses; 

152. 如何监控 SGA 中共享缓存区的命中率,应该小于1% ? 
select sum(pins) "Total Pins", sum(reloads) "Total Reloads", 
sum(reloads)/sum(pins) *100 libcache 
from v$librarycache; 

select sum(pinhits-reloads)/sum(pins) "hit radio",sum(reloads)/sum(pins) "reload percent" 
from v$librarycache; 

153. 如何显示所有数据库对象的类别和大小? 
select count(name) num_instances ,type ,sum(source_size) source_size , 
sum(parsed_size) parsed_size ,sum(code_size) code_size ,sum(error_size) error_size, 
sum(source_size) +sum(parsed_size) +sum(code_size) +sum(error_size) size_required 
from dba_object_size 
group by type order by 2; 

154. 监控 SGA 中重做日志缓存区的命中率,应该小于1% 
SELECT name, gets, misses, immediate_gets, immediate_misses, 
Decode(gets,0,0,misses/gets*100) ratio1, 
Decode(immediate_gets+immediate_misses,0,0, 
immediate_misses/(immediate_gets+immediate_misses)*100) ratio2 
FROM v$latch WHERE name IN ('redo allocation', 'redo copy'); 

155. 监控内存和硬盘的排序比率,最好使它小于 .10,增加 sort_area_size 
SELECT name, value FROM v$sysstat WHERE name IN ('sorts (memory)', 'sorts (disk)'); 


156. 如何监控当前数据库谁在运行什么SQL语句? 
SELECT osuser, username, sql_text from v$session a, v$sqltext b 
where a.sql_address =b.address order by address, piece; 

157. 如何监控字典缓冲区? 
SELECT (SUM(PINS - RELOADS)) / SUM(PINS) "LIB CACHE" FROM V$LIBRARYCACHE; 
SELECT (SUM(GETS - GETMISSES - USAGE - FIXED)) / SUM(GETS) "ROW CACHE" FROM V$ROWCACHE; 
SELECT SUM(PINS) "EXECUTIONS", SUM(RELOADS) "CACHE MISSES WHILE EXECUTING" FROM V$LIBRARYCACHE; 
后者除以前者,此比率小于1%,接近0%为好。 

SELECT SUM(GETS) "DICTIONARY GETS",SUM(GETMISSES) "DICTIONARY CACHE GET MISSES" 
FROM V$ROWCACHE 


158. 监控 MTS 
select busy/(busy+idle) "shared servers busy" from v$dispatcher; 
此值大于0.5时,参数需加大 
select sum(wait)/sum(totalq) "dispatcher waits" from v$queue where type='dispatcher'; 
select count(*) from v$dispatcher; 
select servers_highwater from v$mts; 
servers_highwater接近mts_max_servers时,参数需加大 

159. 如何知道当前用户的ID号? 
SQL>SHOW USER; 
OR 
SQL>select user from dual; 

160. 如何查看碎片程度高的表? 
SELECT segment_name table_name , COUNT(*) extents 
FROM dba_segments WHERE owner NOT IN ('SYS', 'SYSTEM') GROUP BY segment_name 
HAVING COUNT(*) = (SELECT MAX( COUNT(*) ) FROM dba_segments GROUP BY segment_name); 

162. 如何知道表在表空间中的存储情况? 
select segment_name,sum(bytes),count(*) ext_quan from dba_extents where 
tablespace_name='&tablespace_name' and segment_type='TABLE' group by tablespace_name,segment_name; 

163. 如何知道索引在表空间中的存储情况? 
select segment_name,count(*) from dba_extents where segment_type='INDEX' and owner='&owner' 
group by segment_name; 

164、如何知道使用CPU多的用户session? 
11是cpu used by this session 

select a.sid,spid,status,substr(a.program,1,40) prog,a.terminal,osuser,value/60/100 value 
from v$session a,v$process b,v$sesstat c 
where c.statistic#=11 and c.sid=a.sid and a.paddr=b.addr order by value desc; 

165. 如何知道监听器日志文件? 
以8I为例 
$ORACLE_HOME/NETWORK/LOG/LISTENER.LOG 

166. 如何知道监听器参数文件? 
以8I为例 
$ORACLE_HOME/NETWORK/ADMIN/LISTENER.ORA 

167. 如何知道TNS 连接文件? 
以8I为例 
$ORACLE_HOME/NETWORK/ADMIN/TNSNAMES.ORA 

168. 如何知道Sql*Net 环境文件? 
以8I为例 
$ORACLE_HOME/NETWORK/ADMIN/SQLNET.ORA 

169. 如何知道警告日志文件? 
以8I为例 
$ORACLE_HOME/ADMIN/SID/BDUMP/SIDALRT.LOG 

170. 如何知道基本结构? 
以8I为例 
$ORACLE_HOME/RDBMS/ADMIN/STANDARD.SQL 

171. 如何知道建立数据字典视图? 
以8I为例 
$ORACLE_HOME/RDBMS/ADMIN/CATALOG.SQL 

172. 如何知道建立审计用数据字典视图? 
以8I为例 
$ORACLE_HOME/RDBMS/ADMIN/CATAUDIT.SQL 

173. 如何知道建立快照用数据字典视图? 
以8I为例 
$ORACLE_HOME/RDBMS/ADMIN/CATSNAP.SQL 

本讲主要讲的是SQL语句的优化方法! 主要基于ORACLE9I的. 
174. /*+ALL_ROWS*/ 
表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 
例如: 
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='CCBZZP'; 

175. /*+FIRST_ROWS*/ 
表明对语句块选择基于开销的优化方法,并获得最佳响应时间,使资源消耗最小化. 
例如: 
SELECT /*+FIRST_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='CCBZZP'; 

176. /*+CHOOSE*/ 
表明如果数据字典中有访问表的统计信息,将基于开销的优化方法,并获得最佳的吞吐量; 
表明如果数据字典中没有访问表的统计信息,将基于规则开销的优化方法; 
例如: 
SELECT /*+CHOOSE*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='CCBZZP'; 

177. /*+RULE*/ 
表明对语句块选择基于规则的优化方法. 
例如: 
SELECT /*+ RULE */ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_NO='CCBZZP'; 

178. /*+FULL(TABLE)*/ 
表明对表选择全局扫描的方法. 
例如: 
SELECT /*+FULL(A)*/ EMP_NO,EMP_NAM FROM BSEMPMS A WHERE EMP_NO='CCBZZP'; 

179. /*+ROWID(TABLE)*/ 
提示明确表明对指定表根据ROWID进行访问. 
例如: 
SELECT /*+ROWID(BSEMPMS)*/ * FROM BSEMPMS WHERE ROWID>='AAAAAAAAAAAAAA' 
AND EMP_NO='CCBZZP'; 

180. /*+CLUSTER(TABLE)*/ 
提示明确表明对指定表选择簇扫描的访问方法,它只对簇对象有效. 
例如: 
SELECT /*+CLUSTER */ BSEMPMS.EMP_NO,DPT_NO FROM BSEMPMS,BSDPTMS 
WHERE DPT_NO='TEC304' AND BSEMPMS.DPT_NO=BSDPTMS.DPT_NO; 

181. /*+INDEX(TABLE INDEX_NAME)*/ 
表明对表选择索引的扫描方法. 
例如: 
SELECT /*+INDEX(BSEMPMS SEX_INDEX) USE SEX_INDEX BECAUSE THERE ARE FEWMALE BSEMPMS */ FROM BSEMPMS WHERE SEX='M'; 

182. /*+INDEX_ASC(TABLE INDEX_NAME)*/ 
表明对表选择索引升序的扫描方法. 
例如: 
SELECT /*+INDEX_ASC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='CCBZZP'; 

183. /*+INDEX_COMBINE*/ 
为指定表选择位图访问路经,如果INDEX_COMBINE中没有提供作为参数的索引,将选择出位图索引的 
布尔组合方式. 
例如: 
SELECT /*+INDEX_COMBINE(BSEMPMS SAL_BMI HIRE2003-10-17_BMI)*/ * FROM BSEMPMS 
WHERE SAL<5000000 AND HIRE2003-10-17<SYS2003-10-17; 

184. /*+INDEX_JOIN(TABLE INDEX_NAME)*/ 
提示明确命令优化器使用索引作为访问路径. 
例如: 
SELECT /*+INDEX_JOIN(BSEMPMS SAL_HMI HIRE2003-10-17_BMI)*/ SAL,HIRE2003-10-17 
FROM BSEMPMS WHERE SAL<60000; 

185. /*+INDEX_DESC(TABLE INDEX_NAME)*/ 
表明对表选择索引降序的扫描方法. 
例如: 
SELECT /*+INDEX_DESC(BSEMPMS PK_BSEMPMS) */ FROM BSEMPMS WHERE DPT_NO='CCBZZP'; 

186. /*+INDEX_FFS(TABLE INDEX_NAME)*/ 
对指定的表执行快速全索引扫描,而不是全表扫描的办法. 
例如: 
SELECT /*+INDEX_FFS(BSEMPMS IN_EMPNAM)*/ * FROM BSEMPMS WHERE DPT_NO='TEC305'; 

187. /*+ADD_EQUAL TABLE INDEX_NAM1,INDEX_NAM2,...*/ 
提示明确进行执行规划的选择,将几个单列索引的扫描合起来. 
例如: 
SELECT /*+INDEX_FFS(BSEMPMS IN_DPTNO,IN_EMPNO,IN_SEX)*/ * FROM BSEMPMS WHERE EMP_NO='CCBZZP' AND DPT_NO='TDC306'; 

188. /*+USE_CONCAT*/ 
对查询中的WHERE后面的OR条件进行转换为UNION ALL的组合查询. 
例如: 
SELECT /*+USE_CONCAT*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M'; 

189. /*+NO_EXPAND*/ 
对于WHERE后面的OR 或者IN-LIST的查询语句,NO_EXPAND将阻止其基于优化器对其进行扩展. 
例如: 
SELECT /*+NO_EXPAND*/ * FROM BSEMPMS WHERE DPT_NO='TDC506' AND SEX='M'; 

190. /*+NOWRITE*/ 
禁止对查询块的查询重写操作. 

191. /*+REWRITE*/ 
可以将视图作为参数. 

192. /*+MERGE(TABLE)*/ 
能够对视图的各个查询进行相应的合并. 
例如: 
SELECT /*+MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELET DPT_NO 
,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO 
AND A.SAL>V.AVG_SAL; 

193. /*+NO_MERGE(TABLE)*/ 
对于有可合并的视图不再合并. 
例如: 
SELECT /*+NO_MERGE(V) */ A.EMP_NO,A.EMP_NAM,B.DPT_NO FROM BSEMPMS A (SELET DPT_NO 
,AVG(SAL) AS AVG_SAL FROM BSEMPMS B GROUP BY DPT_NO) V WHERE A.DPT_NO=V.DPT_NO 
AND A.SAL>V.AVG_SAL; 

194. /*+ORDERED*/ 
根据表出现在FROM中的顺序,ORDERED使ORACLE依此顺序对其连接. 
例如: 
SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C 
WHERE A.COL1=B.COL1 AND B.COL1=C.COL1; 

195. /*+USE_NL(TABLE)*/ 
将指定表与嵌套的连接的行源进行连接,并把指定表作为内部表. 
例如: 
SELECT /*+ORDERED USE_NL(BSEMPMS)*/ BSDPTMS.DPT_NO,BSEMPMS.EMP_NO,BSEMPMS.EMP_NAM FROM BSEMPMS,BSDPTMS WHERE BSEMPMS.DPT_NO=BSDPTMS.DPT_NO; 

196. /*+USE_MERGE(TABLE)*/ 
将指定的表与其它行源通过合并排序连接方式连接起来. 
例如: 
SELECT /*+USE_MERGE(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE 
BSEMPMS.DPT_NO=BSDPTMS.DPT_NO; 

197. /*+USE_HASH(TABLE)*/ 
将指定的表与其它行源通过哈希连接方式连接起来. 
例如: 
SELECT /*+USE_HASH(BSEMPMS,BSDPTMS)*/ * FROM BSEMPMS,BSDPTMS WHERE 
BSEMPMS.DPT_NO=BSDPTMS.DPT_NO; 

198. /*+DRIVING_SITE(TABLE)*/ 
强制与ORACLE所选择的位置不同的表进行查询执行. 
例如: 
SELECT /*+DRIVING_SITE(DEPT)*/ * FROM BSEMPMS,DEPT@BSDPTMS WHERE BSEMPMS.DPT_NO=DEPT.DPT_NO; 

199. /*+LEADING(TABLE)*/ 
将指定的表作为连接次序中的首表. 

200. /*+CACHE(TABLE)*/ 
当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端 
例如: 
SELECT /*+FULL(BSEMPMS) CAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS; 

201. /*+NOCACHE(TABLE)*/ 
当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端 
例如: 
SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS; 

202. /*+APPEND*/ 
直接插入到表的最后,可以提高速度. 
insert /*+append*/ into test1 select * from test4 ; 
203. /*+NOAPPEND*/ 
通过在插入语句生存期内停止并行模式来启动常规插入. 

insert /*+noappend*/ into test1 select * from test4 ; 


ORACLE内部函数篇 
204. 如何得到字符串的第一个字符的ASCII值? 
ASCII(CHAR) 
SELECT ASCII('ABCDE') FROM DUAL; 
结果: 65 

205. 如何得到数值N指定的字符? 
CHR(N) 
SELECT CHR(68) FROM DUAL; 
结果: D 

206. 如何连接两个字符串? 
CONCAT(CHAR1,CHAR2) 
SELECT CONCAT('ABC','DEFGH') FROM DUAL; 
结果: 'ABCDEFGH' 

207. 如何将列中的数值代替为字符串? 
DECODE(CHAR,N1,CHAR1,N2,CHAR2...) 
SELECT DECODE(DAY,1,'SUN',2,'MON') FROM DUAL; 

208. INITCAP(CHAR) 
将字符串CHAR的第一个字符为大写,其余为小写. 
SELECT INITCAP('ABCDE') FROM DUAL; 

209. LENGTH(CHAR) 
取一字符串CHAR的长度. 
SELECT LENGTH('ABCDE') FROM DUAL; 

210. LOWER(CHAR) 
将字符串CHAR全部变为小写. 
SELECT LOWER('ABCDE') FROM DUAL; 

211. LPAD(CHAR1,N,CHAR2) 
用字符串CHAR2包括的字符左填CHAR1,使其长度为N. 
SELECT LPAD('ABCDEFG',10'123') FROM DUAL; 
结果: '123ABCDEFG' 

212. LTRIM(CHAR,SET) 
从字符串CHAR的左边移去字符串SET中的字符,直到第一个不是SET中的字符为止. 
SELECT ('CDEFG','CD') FROM DUAL; 
结果: 'EFG' 

213. NLS_INITCAP(CHAR) 
取字符CHAR的第一个字符大写,其余字符为小写. 
SELECT NLS_INITCAP('ABCDE') FROM DUAL; 

214. NLS_LOWER(CHAR) 
将字符串CHAR包括的字符全部小写. 
SELECT NLS_LOWER('AAAA') FROM DUAL; 

215. NLS_UPPER(CHAR) 
将字符串CHAR包括的字符全部大写. 
SELECT NLS_UPPER('AAAA') FROM DUAL; 

216. REPLACE(CHAR1,CHAR2,CHAR3) 
用字符串CHAR3代替每一个列值为CHAR2的列,其结果放在CHAR1中. 
SELECT REPLACE(EMP_NO,'123','456') FROM DUAL; 

217. RPAD(CHAR1,N,CHAR2) 
用字符串CHAR2右填字符串CHAR1,使其长度为N. 
SELECT RPAD('234',8,'0') FROM DUAL; 

218. RTRIM(CHAR,SET) 
移去字符串CHAR右边的字符串SET中的字符,直到最后一个不是SET中的字符为止. 
SELECT RTRIM('ABCDE','DE') FROM DUAL; 

219. SUBSTR(CHAR,M,N) 
得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为一个字符的. 
SELECT SUBSTR('ABCDE',2,3) FROM DUAL; 

220. SUBSTRB(CHAR,M,N) 
得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为二个字符的. 
SELECT SUBSTRB('ABCDE',2,3) FROM DUAL; 

221. TRANSLATE(CHAR1,CHAR2,CHAR3) 
将CHAR1中的CHAR2的部分用CHAR3代替. 
SELECT TRANSLATE('ABCDEFGH','DE','MN') FROM DUAL; 

222. UPPER(CHAR) 
将字符串CHAR全部为大写. 

223. ADD_MONTHS(D,N) 
将N个月增加到D日期. 
SELECT ADD_MONTHS(SYS2003-10-17,5) FROM DUAL; 

224. LAST_DAY(D) 
得到包含D日期的月份的最后的一天的日期. 
SELECT LAST_DAY(SYS2003-10-17) FROM DUAL; 

225. MONTH_BETWEEN(D1,D2) 
得到两个日期之间的月数. 
SELECT MONTH_BETWEEN(D1,D2) FROM DUAL; 

226. NEXT_DAY(D,CHAR) 
得到比日期D晚的由CHAR命名的第一个周日的日期. 
SELECT NEXT_DAY(TO_2003-10-17('2003/09/20'),'SATDAY') FROM DUAL; 

227. ROUNT(D,FMT) 
得到按指定的模式FMT舍入到的最进的日期. 
SELECT ROUNT('2003/09/20',MONTH) FROM DUAL; 

228. SYS2003-10-17 
得到当前系统的日期和时间. 
SELECT SYS2003-10-17 FROM DUAL; 

229. TO_CHAR(D,FMT) 
将日期D转换为FMT的字符串. 
SELECT TO_CHAR(SYS2003-10-17,'YYYY/MM/DD') FROM DUAL; 

230. TO_2003-10-17(CHAR,FMT) 
将字符串CHAR按FMT的格式转换为日期. 
SELECT TO_2003-10-17('2003/09/20','YYYY/MM/DD') FROM DUAL; 

231. ABS(N) 
得到N的绝对值. 
SELECT ABS(-6) FROM DUAL; 

232. CEIL(N) 
得到大于或等于N的最大整数. 
SELECT CEIL(5.6) FROM DUAL; 

233. COS(N) 
得到N的余弦值. 
SELECT COS(1) FROM DUAL; 

234. SIN(N) 
得到N的正弦值. 
SELECT SIN(1) FROM DUAL; 

235. COSH(N) 
得到N的双曲余弦值. 
SELECT COSH(1) FROM DUAL; 

236. EXP(N) 
得到N的E的N次幂. 
SELECT EXP(1) FROM DUAL; 

237. FLOOR(N) 
得到小于或等于N的最小整数. 
SELECT FLOOR(5.6) FROM DUAL; 

238. LN(N) 
得到N的自然对数. 
SELECT LN(1) FROM DUAL; 

239. LOG(M,N) 
得到以M为底N的对数. 
SELECT LOG(2,8) FROM DUAL; 

240. MOD(M,N) 
得到M除以N的余数. 
SELECT MOD(100,7) FROM DUAL; 

241. POWER(M,N) 
得到M的N幂. 
SELECT POWER(4,3) FROM DUAL; 

242. ROUND(N,M) 
将N舍入到小数点后M位. 
SELECT (78.87653,2) FROM DUAL; 

243. SIGN(N) 
当N<0时,得到-1; 
当N>0时,得到1; 
当N=0时,得到0; 
SELECT SIGN(99) FROM DUAL; 

244. SINH(N) 
得到N的双曲正弦值. 
SELECT SINH(1) FROM DUAL; 

245. SORT(N) 
得到N的平方根,N>=0 
SELECT SORT(9) FROM DUAL; 

246. TAN(N) 
得到N的正切值. 
SELECT TAN(0) FROM DUAL; 

247. TANH(N) 
得到N的双曲正切值. 
SELECT TANH(0) FROM DUAL; 

248. TRUNC(N,M) 
得到在M位截断的N的值. 
SELECT TRUNC(7.7788,2) FROM DUAL; 

249. COUNT() 
计算满足条件的记录数. 
SELECT COUNT(*) FROM TABLE1 WHERE COL1='AAA'; 

250. MAX() 
对指定的列求最大值. 
SELECT MAX(COL1) FROM TABLE1; 

251. MIN() 
对指定的列求最小值. 
SELECT MIN(COL1) FROM TABLE1; 

252. AVG() 
对指定的列求平均值. 
SELECT AVG(COL1) FROM TABLE1; 

253. SUM() 
计算列的和. 
SELECT SUM(COL1) FROM DUAL; 

254. TO_NUMBER(CHAR) 
将字符转换为数值. 
SELECT TO_NUMBER('999') FROM DUAL; 

ORACLE内部函数篇 
255. CHARTOROWID(CHAR) 
将包含外部语法ROWID的CHAR或VARCHAR2数值转换为内部的二进制语法,参数CHAR必须是包含外部语法的ROWID的18字符的字符串. 
SELECT NAME FROM BSEMPMS WHERE ROWID=CHARTOROWID('AAAAfZAABAAACp8AAO'); 
NAME : LEIXUE 

256. CONVERT(CHAR,DEST_CHAR_SET,SOURCE_CHAR_SET) 
CONVERT将字符串CHAR中的字符从SOURCE_CHAR_SET标识的字符集转换为由DEST_CHAR_SET标识的字符集 

SELECT CONVERT('GroB','US7ASCII','WE8HP') 'CONVERSION' FROM PUBS; 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -