文档章节

PLSQL常用函数(ORACLE)(1)

_Tomorrow
 _Tomorrow
发布于 2016/04/25 21:52
字数 1240
阅读 33
收藏 1

 1)处理字符的函数


  || 或 CONCAT---并置运算符。
  格式∶CONCAT(STRING1, STRING2)
  例:’ABC’|| ’DE’=’ABCDE’
  CONCAT(‘ABC’,’DE’) =’ABCDE’
  
  ASCII---返回字符的ASCII码。
  例:ASCII(‘A’) = 65 
  
  CHR---返回指定ASCII码的字符。
  例:CHR(65) = ‘A’ 
  
  INSTR---搜索子串位置 
  格式∶INSTR(STRING , SET[ , 开始位置[ , 出现次数]])
  例∶ INSTR (‘this is a test’ , ‘i’ , 1,2)=6
  
   INITCAP---将字符串每个单词首字母均变为大写
  例: INITCAP(‘this is a test’)=’ This Is A Test’’
  
  LENGTH----计算串长
  格式∶ LENGTH(string)
  
  RPAD,LPAD---右填充、左填充。默认为填充空格。
  格式: RPAD(字符串 , 字符个数 , 填充字符)
  例: RPAD(‘ABC’ , 6 , ’H’)=’ABCHHH’
  
  LTRIM,RTRIM-----左右截断。默认为删除空格。 
  格式∶ LTRIM(STRING[,’SET’])
  例∶ LTRIM(‘***tes*t***’ , ’*’)=’ tes*t***’
   
  LOWER----将字符串转换为小写
  格式∶LOWER(string)
  
  UPPER---将字符串转换为大写
  格式∶UPPER(string)
  
  SUBSTR----提取子串。START为正数时从左开始、为负数时从右开始
  格式∶ SUBSTR(STRING , START [ , COUNT])
  例∶ SUBSTR(‘WORDSTAR’ , 2 , 3)=’ ORD’
   
  REPLACE---搜索指定字符串并替换
  格式∶REPLACE(string , substring , replace_string)
  例∶ REPLACE(‘this is a test’ , ‘this’ , ‘that an’)=’that an is a test’
  
  TRIM---删除字符串前缀或尾随字符
  格式∶TRIM( [LEADING | TRAILING |BOTH] [ trimchar FROM ] string)
  LEADING---删除前缀字符
  TRAILING---删除后缀字符
  BOTH---前后缀字符均删除(默认方式)
  Trimchar---指定删除的字符
  
  注:INSTR,LENGTH,SUBSTR加B时针对字节.


  2)处理数字的函数


  LEAST---返回参数列表中的最小值。返回参数类型以第一参数为准
  格式∶LEAST(value,value,value,value,value,….)value为数字或字符串
  例∶ LEAST(1,2,5,-10,9)= -10
  
  SIGN---返回参数的符号位,负数--- -1,0----0,正数---1
  格式∶SIGN(value)
   
  CELL---返回大于等于特定值的最小整数
  格式∶CELL(value)
  例∶ CELL(-10,9)= -10


  3)处理日期


  SYSDATE---系统时间。精确至秒
  
  ADD_MONTH—加减月份。numvalue为负数时减去相应月份
  格式: ADD_MONTH (data1,numvalue)
  
  MONTHS_BETWEEN---返回两日期之间的月数,当data1
  格式: MONTHS_BETWEEN(data1,data2)
  
  LAST_DAY---返回指定日期的最后一天。
  格式∶LAST_DAY(date)
  
  TRUNC---将日期按照format格式截短,缺省为DD(不是四舍五入)
  格式:TRUNC(date, format)
  例∶ TRUNC (to_date(‘2002-11-07’,’yyyy-mm-dd’),’MM’)= 2002-11-01
  
  4)分组函数


  返回基于多个行的单一结果.
  常用函数:
  AVG---求平均值
  COUNT---返回查询的行数
  MAX---返回查询列的最大值
  MIN---返回查询列的最小值
  SUM---返回查询列的总和
  MAX, MIN常与GROUP BY配套使用


  5)转换函数


  TO_DATE---转换字符串为日期型
  格式∶ TO_DATE(STRING[,’FORMAT’])
  
  TO_CHAR---转换日期型或数值型为字符串。最重要的函数之一.其FORMAT格式多种多样
  格式∶TO_CHAR(DATE [,’FORMAT’])
  FORMAT---具体格式参考ORACLE8i DBA 宝典P835数字格式元素
  P836 日期格式元素
  
  TO_NUMBER---转换字符串为数字
  格式∶TO_NUMBER(string [ , format])
  FORMAT---具体格式参考ORACLE8i DBA 宝典P835数字格式元素
   
  6)其他


  DECODE---IF语句的另一形式。将输入数值与参数列表比较,返回对应值。应用于将表的行转换成列以及IF语句无法应用的场合。当与SIGN联合使用时功能扩展,可以判断大于小于的情况.
  格式: DECODE(input_value , value1 , result1 , value2 , result2 , ….defult_result)
  例∶ DECODE(VALUE,1,100,2,300,500)
  当VALUE=1时返回100
  当VALUE=2时返回300
  否则返回500
  
  DECODE(SIGN(VALUES-100), -1,-10,1,10,0)
  当VALUE<100时返回-10
  当VALUE>100时返回10
  当VALUE=100时返回0
  
  SELECT SUM(DECODE(EST_INT_KEY,77771,1,0)) A,
  SUM(DECODE(EST_INT_KEY,77772,1,0)) B,
  SUM(DECODE(EST_INT_KEY,77773,1,0)) C
  FROM PMS_BLK
  
  NVL---空值置换
  格式: NVL(value,替换值)
  例: NVL(value,’nullvalue’)当value为NULL值时返回nullvalue否则返回value的值
  
  VSIZE---以字节为单位返回数据类型尺寸
  格式∶VSIZE(数据类型)
  例∶ VSIZE(SYSDATE)=8
  
  USER---得到当前用户名
  
  ROWNUM--- oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数。不能以任何基表的名称作为前缀。可以用在限制返回记录条数的地方不受ORDER BY的影响.
  例∶ select rownum,month,sell from sale where rownum=1
  或select rownum,month,sell from sale where rownum<2(返回第一条记录)
  返回rownum在4—10之间的记录
  select rownum,month,sell from sale where rownum<10
  minus
  select rownum,month,sell from sale where rownum<5;
  
  以下均错误:
  select rownum,month,sell from sale where rownum=2(1以上)
  select rownum,month,sell from sale where rownum>2
  
  ROWID---数据行在物理磁盘上的物理地址,Oracle通过ROWID来定位数据的具体位置,这是存取表中数据的最快的方法.
  RETURN---用于函数和过程中.遇见RETURN程序立刻中断,返回,不再执行剩余部分.
  SQLCODE---返回ORACLE错误号。
  SQLERRM---返回ORACLE错误信息。

本文转载自:http://www.cnblogs.com/debuging/archive/2012/11/05/2754837.html

_Tomorrow
粉丝 4
博文 21
码字总数 2621
作品 0
青岛
项目经理
私信 提问
如何在PLSQL中调试PACKAGE包中的FUNCTION函数

如何在PLSQL中调试PACKAGE包中的FUNCTION函数 Oracle中的packages包是一组包含procedures存储过程、functions函数和游标等元素的组合。相比Sybase数据库的SQL Advantage工具,Oracle数据库的...

yl497103815
2018/07/02
0
0
Plsql连接Oracle 64位

安装64位oracle后,用plsql连接时,发现数据库选项为空。为了解决这下问题,产生以下记录: 1、 下载并安装oracle 11g r2 http://download.oracle.com/otn/nt/oracle11g/112010/win6411gR2da...

鱼中鱼
2016/06/02
51
0
oracle10 ora-12154错误的解决办法

安装好oracle10客户端,配置好网络服务名称,用enterprsie manager console 连接服务器,一切正常,连接成功。 接着安装plsql developer,安装完成后,运行plsql, 输入用户名和密码,数据库名...

彭苏云
2014/06/27
116
0
PLSQL连接oracle11g数据库

1.安装oracle; 2.安装PLSQL(有绿色版); 3.下载instantclient112,解压 4.打开PLSQL,按取消,工具,首选项,将Oracle Home路径指定为Oracle Client目录(如图),OCI Libaray路径为Oracle ...

不最醉不龟归
2016/11/07
12
0
PLSQL Developer连接Oracle数据库

一、环境 Oracle当前版本:Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production Oracle安装路径:D:oraclexe PLSQL Developer版本:PLSQL Developer 11.0.3.1700,3......

最王座
2016/08/31
194
0

没有更多内容

加载失败,请刷新页面

加载更多

ReentrantLock的可重入特性

在自旋分布式锁实现 中我们已经分析了ReentrantLock的自旋特性,现在我们来分析一下它的可重入特性。 可重入特性其实说白了就是当获得锁的线程解锁后,重新来获取锁的时候会判断自己以前是否...

算法之名
50分钟前
8
0
js如何控制table中的某一行动态置顶

两行代码搞定: $('#'+item.roadCode).fadeOut().fadeIn();//获取到需要置顶的行 $(".table").prepend($('#'+item.roadCode)); 其中,fadeOut()方法 作用 --- 从可见到隐藏 如下: prepend(......

码妞
今天
4
0
四种解决Nginx出现403 forbidden 报错的方法

我是在在本地用虚拟机中通过yum安装nginx的,安装一切正常,但是访问时报403, 于是查看nginx日志,路径为/var/log/nginx/error.log。打开日志发现报错Permission denied,详细报错如下: 1....

dragon_tech
今天
3
0
获取RestResultResponse返回的值

Springboot项目,需要调其他服务的接口,返回值类型是RestResultResponse 打断点的结果集是这个 打印出来的getData(): [{id=3336b624-8474-4dd9-bd5b-c7358687c877, paraNo=104, para=Postpo...

栾小糖
今天
4
0
【小学】 生成10以内的加减法

#!/usr/bin/env python# coding: utf-8from random import randrange# 题目的最大数值R_MAX = 10# 生成的题目的数量R_PAGE = 70# 生成减法列表def get_sub_list():...

Tensor丨思悟
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部