分类(Oracle)
Oracle常用函数用法
2009/03/05 10:04
#######instr###########################################
INSTR方法的格式为
INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)
INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)
例如:INSTR('CORPORATE FLOOR','OR', 3, 2)中,源字符串为'CORPORATE FLOOR', 目标字符串为'OR',起始位置为3,取第2个匹配项的位置。
默认查找顺序为从左到右。当起始位置为负数的时候,从右边开始查找。
SELECT INSTR('CORPORATE FLOOR', 'OR', 1, 1) "Instring" FROM DUAL
INSTR常与substr 结合使用,用来截取字符串。
例:
------------------------------------------------------------
集团客户经理(东北) 要把“东北”单独截出来:
select SUBSTR('集团客户经理(东北)', INSTR('集团客户经理(东北)', '(', 1, 1) + 1, 2) FROM dual ;
###############去掉换行,回车##########################
REPLACE(SMS,CHR(13)||CHR(10),'')
REPLACE(SMS,CHR(13)||CHR(10),'')
/* ****现在突然对内外连接概念有点模糊,有谁能给解释一下?谢谢!*/
=========================================================
=========================================================
1.
内连接是一对一的连接;外连接是一对多的连接
内连接是一对一的连接;外连接是一对多的连接
如下: where table_a.id = table_b.id 内连接
where table_a.id = table_b.id(+) 为外连接
2.
内联接:Select Table_a.a,Table_b.b from Table_a,Table_b where table_a.id = table_b.id
外联接: Select Table_a.a,Table_b.b from Table_a,Table_b where table_a.id(+) = table_b.id
3.
外左联接:Select Table_a.a from Table_a a left outer join bwhere table_a.id = table_b.id
外右联接: Select Table_a.a from Table_a a right outer join where table_a.id = table_b.id
全连接: Select Table_a.a from Table_a a full outer join where table_a.id = table_b.id
4.
a.id=b.id(+) ===> a left outer join b on a.id=b.id
a.id(+)=b.id ===> a right outer join b on a.id=b.id
5.
a.id=b.id(+) ===> a 表内容全部显示
a.id(+)=b.id ===> b 表内容全部显示
where table_a.id = table_b.id(+) 为外连接
2.
内联接:Select Table_a.a,Table_b.b from Table_a,Table_b where table_a.id = table_b.id
外联接: Select Table_a.a,Table_b.b from Table_a,Table_b where table_a.id(+) = table_b.id
3.
外左联接:Select Table_a.a from Table_a a left outer join bwhere table_a.id = table_b.id
外右联接: Select Table_a.a from Table_a a right outer join where table_a.id = table_b.id
全连接: Select Table_a.a from Table_a a full outer join where table_a.id = table_b.id
4.
a.id=b.id(+) ===> a left outer join b on a.id=b.id
a.id(+)=b.id ===> a right outer join b on a.id=b.id
5.
a.id=b.id(+) ===> a 表内容全部显示
a.id(+)=b.id ===> b 表内容全部显示
=========================================================
查树形结构
=========================================================
select dept_id, dept_name,level
from code_dept m
start with dept_id = 530
connect by prior dept_id = parent_dept_id
order by level
from code_dept m
start with dept_id = 530
connect by prior dept_id = parent_dept_id
order by level
=======================
取整函数
=======================
--- trunc (1.9) = 1 取整
--- ceil( 1.1) = 2 与trunc 相反
--- ceil( 1.1) = 2 与trunc 相反
--- round 四舍五入
=======================
LPAD函数
=======================
1在oracle的数据库里有个函数 LPAD(String a,int length,String addString).
2作用:把addString添加到a的左边,length 是返回值的长度。
3例子
A : SQL> select lpad('test',8,0) from dual;
LPAD('TEST',8,0)
----------------
0000test
LPAD('TEST',8,0)
----------------
0000test
B: select lpad('test',8) from dual;
LPAD('TEST',8)
--------------
test 注:不写最后一个参数,函数会默认在返回值左边加一个空格。
LPAD('TEST',8)
--------------
test 注:不写最后一个参数,函数会默认在返回值左边加一个空格。
C: SQL> select lpad('test',2,0) from dual;
LPAD('TEST',2,0)
----------------
te
LPAD('TEST',2,0)
----------------
te
D:SQL> select lpad('test',3) from dual;
LPAD('TEST',3)
--------------
tes
LPAD('TEST',3)
--------------
tes
来自:本站原创
相关日志:
+引用(0) |
发表评论
| 昵称 密码 游客无需密码 |
| 网址 电邮 注册 |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
验证码 请输入左侧图片中的字符
记住我







