1,合并字符串:||或者CONCAT:
select CONCAT('ABC','DE') from dual;结果:'ABCDE';
2,字符串每个单词首字母变大写:
select INITCAP('this is a test') from dual;结果: 'This Is A Test';
3,计算字符串长度:
select LENGTH('this is a test') from dual;结果:14;
4,左填充LPAD,右填充RPAD,默认填充空格,可指定字符:
select LPAD('abc',6,'A') from dual;结果: 'AAAabc';
5,字符串转换大写UPPER,转换小写LOWER:
select UPPER('abc') from dual;结果: 'ABC';
6,提取子串:
select substr('helloword',2,3) from dual;结果: 'ell';
7,删除字符串前缀和后缀:TRIM( [LEADING | TRAILING |BOTH] [ trimchar FROM ] string)
LEADING---删除前缀字符
TRAILING---删除后缀字符
BOTH---前后缀字符均删除(默认方式)
Trimchar---指定删除的字符
select trim(both 'h' from 'hellowordh') from dual;结果:'elloword'
8,返回参数列表中的最小值:
select LEAST(1,2,5,-10,9) from dual;结果:'-10';
14,聚合函数:AVG---求平均值;
COUNT---返回查询的行数;
MAX---返回查询列的最大值;
MIN---返回查询列的最小值;
SUM---返回查询列的总和;
MAX, MIN常与GROUP BY配套使用
15,转换函数:
TO_DATE---转换字符串为日期型
格式∶ TO_DATE(STRING[,’FORMAT’])
TO_CHAR---转换日期型或数值型为字符串。最重要的函数之一.其FORMAT格式多种多样
格式∶TO_CHAR(DATE [,’FORMAT’])
TO_NUMBER---转换字符串为数字
格式∶TO_NUMBER(string [ , format])
16,DECODE函数:
作用:实现IF-THEN-ELSE语句的功能
语法:decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值)
例如: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
17,NVL---空值置换
格式: NVL(value,替换值)
例: NVL(value,’nullvalue’)当value为NULL值时返回nullvalue否则返回value的值
18,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