Oracle经典sql语句总结@sql-plus重点函数串讲与sql语句案例@中文排序详讲)(二)

2014-11-24 09:28:36 · 作者: · 浏览: 4
//查询员工信息 把员工名称中含有S字符去除掉
SQL> select empno,TRIM('S' from ename),job,mgr,hiredate,comm,deptno from emp;
等效于:
SQL> select empno,TRIM( both 'S' from ename),job,mgr,hiredate,comm,deptno from emp;
//查询员工信息 把员工名称中前面有S字符去除掉
SQL> select empno,TRIM( Leading 'S' from ename),job,mgr,hiredate,comm,deptno from emp;
//等效于
SQL> select empno,LTRIM( ename,'S'),job,mgr,hiredate,comm,deptno from emp;
//查询员工信息 把员工名称中后面有S字符去除掉
SQL> select empno,TRIM( trailing 'S' from ename),job,mgr,hiredate,comm,deptno from emp;
等效于:
SQL> select empno,RTRIM( ename,'S'),job,mgr,hiredate,comm,deptno from emp;
1、字符串连接 || 或 concat(‘’,’’)
SQL> select 'a' || 'b' from dual; //oracle 特有的符号操作
'A'||'B'
--------
ab
SQL> select concat('a','b') from dual;
CONCAT('A','B')
---------------
ab
SQL> select concat(concat('a','b'),'c') from dual;
CONCAT(CONCAT('A','B'),'C')
---------------------------
Abc
子串函数 substr(‘’,开始位置,字符长度) instr(‘’,’出现的字符’)
SQL> select substr('abcdef',1) from dual;
SUBSTR('ABCDEF',1)
------------------
abcdef
备注:开始位置从1开始,如果有两个参数(substr(‘’,2))那么代表的意思是从位置2开始到字符串的结尾的字符串
SQL> select substr('abcdef',1,3) from dual;
SUBSTR('ABCDEF',1,3)
--------------------
abc
随机字符串的函数
dbms_random.string('a',6) //第一个参数有如下几个具体含义也有解释,第二参数代表产生的字符串的长度。
u 大写字母
l小写字母
a大小写字母
x大写字母和数字
p任意字符
//随机产生一个长度为5并且字符大写的字符串 注意观察下面的结果
DBMS_RANDOM.STRING('U',5)
-----------------------------------------------------------
RAVTG
DBMS_RANDOM.STRING('U',5)
-----------------------------------------------------------
NOAJN
备注重点理解u,l,a,x,p的含义。
SQL> select dbms_random.string('l',5) from dual; //随机产生一个长度为5并且字符小写的字符串
DBMS_RANDOM.STRING('L',5)
-----------------------------------------------------------
tawgc
SQL> select dbms_random.string('a',5) from dual; //随机产生一个长度为5并且字符大小写混合的字符串
DBMS_RANDOM.STRING('A',5)
-----------------------------------------------------------TEczi
SQL> select dbms_random.string('x',5) from dual; //随机产生一个长度为5并且字符与数字组合的字符串
DBMS_RANDOM.STRING('X',5)
-----------------------------------------------------------4TDUU
SQL> select dbms_random.string('x',5) from dual;
DBMS_RANDOM.STRING('X',5)
-----------------------------------------------------------RONOZ
select dbms_random.string('p',5) from dual; //随机产生一个长度为5任意的字符串
DBMS_RANDOM.STRING('P',5)
-----------------------------------------------------------5=3)*
SQL> select dbms_random.string('p',5) from dual;
DBMS_RANDOM.STRING('P',5)
-----------------------------------------------------------
zf,@z
4.数字函数:
ROUND: 四舍五入
TRUNC: 截断
MOD: 求余
ABS:绝对值
CEIL:返回大于或等于value的最小整数
FLOOR:返回小于或等于value的最大整数
SQRT :返回value的平方根 负数无意义。
//四舍五入 结果为46
5.经典数字函数sql语句
四舍五入(更详细参考本人o