oracle常用函数积累
--oracle常用函数积累--
--1、字符串长度:LENGTH ,语法: CONCAT(string)
--示例
select LENGTH('AA_BB') from dual;--结果:5
--2、字符串连接:CONCAT,语法: CONCAT(string1,string2)
--示例
select CONCAT('AA','_BB') from dual;--结果:AA_BB
--简单点,用双竖线即可
select 'AA'||'''-'''||'BB' from dual;--结果:AA'-'BB,单引号要用''转义
--3、字符串替换:REPLACE,语法:REPLACE(string,search_str[,replace_str]);
--示例
select REPLACE('AA_BB','BB','CC') from dual;--结果:AA_CC
select REPLACE('AA_BBBB','BB') from dual;--结果:AA_
--4、字符串截取:SUBSTR,语法: SUBSTR(string,start_position,[length]),string 源字符串,start_position开始位置(从0开始), length 可选项,截取的个数
--示例
select SUBSTR('AA_BB',0,2) from dual;--结果:AA
select SUBSTR('AA_BB',0) from dual;--结果:AA_BB
--5、字符串查询:INSTR(string,subString,start_position,count),string:源字符串,subString:要查找的子字符串,start_position:查找的开始位置(从1开始),count:源字符串中第几次出现的子字符串
--示例
select INSTR('AA_BB_BB','A',1,1) from dual;--结果:1
select INSTR('AA_BB_BB','A',1,2) from dual;--结果:2
select INSTR('AA_BB_BB','BB',1,2) from dual;--结果:7
--6、一列结果拼接成一个字符串listagg,语法: listagg(column,str) within group(order by column),column要查找的表字段,str连接字符串
--示例
--3.1、查询table4表的c_id数据
select c_id from table4;
--结果为:
--C_ID
--0BC86FE5-BCF3-45C2-95C1-C8328D5849FD
--39430D20-13BB-4EEB-A300-82F6AC7551CB
--97876BB9-F366-4694-BFD6-71C3ACBD5995
--9C085EE3-399E-4773-8A91-8D745E1713A6
--3.2、使用函数listagg(oracle版本11g或更高)
select listagg(c_id,',') within group(order by c_id) as res
from table4;
--结果为:
--RES
--0BC86FE5-BCF3-45C2-95C1-C8328D5849FD,39430D20-13BB-4EEB-A300-82F6AC7551CB,97876BB9-F366-4694-BFD6-71C3ACBD5995,9C085EE3-399E-4773-8A91-8D745E1713A6
--7、使用to_char、to_date、to_timestamp,时间加减等
--示例
select to_char(sysdate,'yyyy') from dual;--结果:2017
select to_char(sysdate,'mm') from dual;--结果:08
select to_char(sysdate,'dd') from dual;--结果:25
select to_char(sysdate,'yyyy-mm-dd') from dual;--结果:2017-08-25
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;--结果:2017-08-25 17:01:22
select to_date('2017-08-25 17:01:22','yyyy-mm-dd hh24:mi:ss') from dual; --结果:25-8月 -17
select to_timestamp('2017-08-22 09:26:15:821000', 'YYYY-MM-DD HH24:MI:SS:FF6') from dual; --结果:22-8月 -17 09.26.15.821000000 上午
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate - interval '' MINUTE,'yyyy-mm-dd hh24:mi:ss') from dual;--结果:2017-08-25 17:05:41 2017-08-25 16:55:41 减去10分钟
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate + interval '' MINUTE,'yyyy-mm-dd hh24:mi:ss') from dual;--结果:2017-08-25 17:06:44 2017-08-25 17:16:44 加上10分钟
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate - interval '' HOUR,'yyyy-mm-dd hh24:mi:ss') from dual;--减去10小时
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate + interval '' HOUR,'yyyy-mm-dd hh24:mi:ss') from dual;--加上10小时
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate - interval '' MONTH,'yyyy-mm-dd hh24:mi:ss') from dual;--减去10月
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate + interval '' MONTH,'yyyy-mm-dd hh24:mi:ss') from dual;--加上10月
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate - interval '' YEAR,'yyyy-mm-dd hh24:mi:ss') from dual;--减去10年
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),to_char(sysdate + interval '' YEAR,'yyyy-mm-dd hh24:mi:ss') from dual;--加上10年
select to_char(sysdate-1,'yyyy-mm-dd') from dual;--结果:2017-08-24,减去一天
select to_char(sysdate+1,'yyyy-mm-dd') from dual;--结果:2017-08-26,加去一天
--8、空判断:nvl,语法:nvl(column,str),column被判断字符,如果为null,则替换为str
--示例
select nvl(null,'无') from dual;--结果:无
--9、条件判断:case when then else end ,CASE search_expression WHEN expression1 THEN result1 WHEN expressionN THEN resultN ELSE default_result
--示例
select case when 'a'='a' then '优' when 'a'='b' then '良' else '合格' end
from dual;--结果:优
--10截取clob部分数据
dbms_lob.substr(column,4000)
oracle常用函数积累的更多相关文章
- Oracle 常用函数积累
①length 函数说明:计算字符串长度的函数 返回结果:数字 使用图解: ②lengthb 函数说明:计算字符串字节长度.在学习过程中,了解到还有一个 lengthb 函数.字节和字符的区别 返回结 ...
- Oracle常用函数
前一段时间学习Oracle 时做的学习笔记,整理了一下,下面是分享的Oracle常用函数的部分笔记,以后还会分享其他部分的笔记,请大家批评指正. 1.Oracle 数据库中的to_date()函数的使 ...
- Oracle常用函数:DateDiff() 返回两个日期之间的时间间隔自定义函数
首先在oracle中没有datediff()函数可以用以下方法在oracle中实现该函数的功能:1.利用日期间的加减运算天:ROUND(TO_NUMBER(END_DATE - START_DATE) ...
- oracle常用函数总结(二)
之前也有写过“oracle常用函数总结(一)”,为了尽量找全常见oracle函数,笔者特意查找了相关资料来作为参考,下边给大家罗列出来,部分和之前有重复的,希望能帮到大家! 列举了31个函数和1个分组 ...
- oracle常用函数总结
Oracle常用函数总结 ---oracle常用函数-----一.数值型常用函数----取整数--select floor(10.1) from dual;--将n四舍五入,保留小数点后m位(默认情况 ...
- oracle常用函数整理
oracle常用函数整理 1.绝对值.取余.判断数值正负函数 绝对值:ABS(n) 示例: SELECT ABS(100),ABS(-100),ABS('100') FROM ...
- ORACLE常用函数的使用方法
ORACLE常用函数的使用方法 1. 字符串函数 (1) length(); 获取字符长度SELECT LENGTH('中国') FROM PLATFORM_METAINFO_TABLES WHERE ...
- SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等
SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...
- oracle常用函数及示例
学习oracle也有一段时间了,发现oracle中的函数好多,对于做后台的程序猿来说,大把大把的时间还要学习很多其他的新东西,再把这些函数也都记住是不太现实的,所以总结了一下oracle中的一些常用函 ...
随机推荐
- R in action读书笔记(19)第十四章 主成分和因子分析
第十四章:主成分和因子分析 本章内容 主成分分析 探索性因子分析 其他潜变量模型 主成分分析(PCA)是一种数据降维技巧,它能将大量相关变量转化为一组很少的不相关变量,这些无关变量称为主成分.探索性因 ...
- CAS server 连接mysql的deployerConfigContext.xml配置
1.deployerConfigContext.xml配置 <?xml version="1.0" encoding="UTF-8"?> <b ...
- patest_1007_Maximum Subsequence Sum_(dp)(思维)
1007. Maximum Subsequence Sum (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Y ...
- spring-shiro 配置
配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www ...
- CE工具里自带的学习工具--第三关
图解: 重复第5,6,7,8,9步,最终得到:
- 手动配置webpack
//注:“__dirname”是node.js中的一个全局变量,它指向当前执行脚本所在的目录.const path = require('path');const webpack = require( ...
- Java中文乱码处理
java编码转换过程 我们总是用一个java类文件和用户进行最直接的交互(输入.输出),这些交互内容包含的文字可能会包含中文.无论这些java类是与数据库交互,还是与前端页面交互,他们的生命周期总是这 ...
- python 获取路径
获取目录路径和文件路径 import osfor root, dirs, files in os.walk(".", topdown=False): # ‘.’为获取脚本所在路径下 ...
- iframe天气预报
<iframe style="float: right;" width="420" scrolling="no" height=&qu ...
- 1257 背包问题 V3(二分)
1257 背包问题 V3 3 秒 131,072 KB 80 分 5 级题 题意 : 从n个物品中选出k个,使单位体积价值最大 思路: 一开始正面想,试过很多种,排序什么的..总是结果不对,最后想到二 ...