oracle数据库日常使用总结
来源:互联网 发布:淘宝手机端怎么改好评 编辑:程序博客网 时间:2024/06/05 19:20
oracle数据库日常使用总结
decode函数的使用
**使用规则:**decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值)
方法原理:
IF 条件=值1 THEN RETURN(翻译值1)ELSIF 条件=值2 THEN RETURN(翻译值2) ......ELSIF 条件=值n THEN RETURN(翻译值n)ELSE RETURN(缺省值)END IF
Decode函数与一系列嵌套的 IF-THEN-ELSE语句相似。但是使用更加便捷简单。开发中主要可用于:
1. 对不同取值的数据进行计数
在统计策略项目的成功和失败情况时,直接使用Count函数无法完成分别统计成功和失败的次数。此时可以使用sum函数和decode函数结合,例如SUM (DECODE(H.SERVICE_STATUS,'1',1,0)) AS SUCCESS
,若H.SERVICE_STATUS为’1’(其中’1’表示成功),则返回数字1,通过sum函数进行求和,即可求得所有SERVICE_STATUS为’1’的次数
2. 将当前值翻译为其他值
由上例已经可以看出,在使用DECODE(H.SERVICE_STATUS,'1',1,0)
时,将字符型的1翻译为了数字1,使其可以进行求和操作
字符串拼接操作
同一条数据中不同列的字符串之间进行拼接操作
oracle中可以使用||
和CONCAT
两种方式进行字符串拼接
使用||
方式:'字符串1' || '字符串2' || '字符串3' || '字符串4'
注意:这种方式进适用于oracle数据库,在MySQL或其他数据库中不能采用这种方式
使用CONCAT
方式:SELECT CONCAT('字符串1','字符串2') FROM TableName
注意:CONCAT()在oracle中只能拼接两个字符串,如果需要拼接多个字符串,可采用多个CONCAT()嵌套拼接多个字符串。但在MySQL中,CONCAT()函数是可以同时拼接多个字符串的,用法如下
`SELECT CONCAT('字符串1','字符串2','字符串3','字符串4') FROM TableName`
字符串聚合拼接操作
常用的有
- WMSYS.WM_CONCAT (从oracle 10G开始支持)
- LISTAGG(measure_expr,delimiter) WITHIN GROUP(order_by_clause) OVER(query_partition_clause) (从oracle 11G R2开始支持)
- SYS_CONNECT_BY_PATH (从oracle 9i开始支持)
WMSYS.WM_CONCAT用法
select wmsys.wm_concat(colname1) from TableNamegroup by colname2;
默认分隔符为逗号,
如果想替换为其他分隔符,可采用如下方法
select replace(wmsys.wm_concat(colname1),',','、') from TableNamegroup by colname2;
其余两种情况后续补充
- oracle数据库日常使用总结
- 数据库日常使用总结
- Oracle数据库日常维护知识总结
- Oracle数据库日常维护知识总结
- ORACLE数据库日常维护知识总结
- Oracle数据库的日常使用命令
- oracle数据库日常维护
- Oracle数据库日常维护
- Oracle数据库日常维护
- Oracle数据库日常检查
- Oracle数据库日常维护
- Oracle数据库日常检查
- Oracle数据库日常维护
- Oracle数据库日常维护
- Oracle数据库日常维护
- oracle日常-新建数据库
- oracle日常操作总结
- oracle日常使用小结
- Ruby meta programming 4(eval/class_eval/module_eval/instance_eval)
- FPGA实现排序
- JNI中的log日志
- javascript里的&&和||操作符
- Installing Redmine
- oracle数据库日常使用总结
- Git 命令总结
- FAQ的含义
- Same Tree Leetcode
- C语言查询数据库返回结果中文乱码
- python控制台查看某个包文件路径和源码
- mybatis 二级缓存
- ios视图frame与bounds的区别
- POJ 2318 TOYS