ITPub博客

首页 > Linux操作系统 > Linux操作系统 > [转]ORACLE常用傻瓜问题1000问-03

[转]ORACLE常用傻瓜问题1000问-03

原创 Linux操作系统 作者:31597359 时间:2019-07-20 10:51:01 0 删除 编辑
ORACLE常用傻瓜问题1000问

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(SYSDATE,5) FROM DUAL;

224. LAST_DAY(D)

得到包含D日期的月份的最后的一天的日期。

Select LAST_DAY(SYSDATE) 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_DATE('2003/09/20'),'SATDAY') FROM DUAL;

227. ROUNT(D,FMT)

得到按指定的模式FMT舍入到的最进的日期。

Select ROUNT('2003/09/20',MONTH) FROM DUAL;

228. SYSDATE

得到当前系统的日期和时间。

Select SYSDATE FROM DUAL;

229. TO_CHAR(D,FMT)

将日期D转换为FMT的字符串。

Select TO_CHAR(SYSDATE,'YYYY/MM/DD') FROM DUAL;

230. TO_DATE(CHAR,FMT)

将字符串CHAR按FMT的格式转换为日期。

Select TO_DATE('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;

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;

CONVERSION: Gross

257. HEXTORAW(CHAR)

将包含十六进制的CHAR转换为一个RAW数值。

Insert INTO BSEMPMS(RAW_COLUMN) Select HEXTORAW('7D') FROM TEST;

258. RAWTOHEX(RAW)

将RAW数值转换为一个包含十六进制的CHAR值。

Select RAWTOHEX(RAW_COLUMN) 'CONVERSION' FROM BSEMPMS;

CONVERSION: 7D

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8000572/viewspace-62307/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2006-10-07

  • 博文量
    120
  • 访问量
    90586