【Oracle 函数length和lengthb的区别】教程文章相关的互联网学习教程文章

oracle行转列和列转行(pivot 和 unpivot 函数,wm_concat函数 )

create table demo(id int,name varchar(20),nums int); ---- 创建表insert into demo values(1, ‘苹果‘, 1000);insert into demo values(2, ‘苹果‘, 2000);insert into demo values(3, ‘苹果‘, 4000);insert into demo values(4, ‘橘子‘, 5000);insert into demo values(5, ‘橘子‘, 3000);insert into demo values(6, ‘葡萄‘, 3500);insert into demo values(7, ‘芒果‘, 4200);insert into demo values(8, ‘芒果‘...

oracle数据库 部分函数的用法

* from tab; //获取当前用户的数据库的所有表名 select sys_guid(),UserName from TESTLIKUI; //获取guidselect sys_guid() as "唯一标识",UserName as "用户名", Password as pwd from TESTLIKUI; //as后为别名,sys_guid为数据库临时创建的guidselect distinct(password) as pwd from TESTLIKUI;select * from TESTLIKUI WHERE AGE BETWEEN 20 AND 30 //获取到年龄20-30的数据,包括20和30本...

oracle 使用pivot 函数进行批量数据的动态行转列

P_FXJG ASv_LM VARCHAR2(2000);vs_sql varchar2(6000); vs_sql1 varchar2(6000); BEGINvs_sql1 := ‘INSERT INTO LS_TEMP select dbms_lob.substr(wm_concat(distinct(sf))) from B_CLB a ‘;execute immediate vs_sql1;SELECT SFBM INTO V_LM FROM LS_TEMP; vs_sql := ‘create or replace view V_FXJG as select * from (select a.YH, a.MC, a.LX "BZ", a.SF, a.JG from B_CLB a ) pivot(sum(JG) ...

oracle使用execute immediate方式完成函数动态传入表名并操作 返回新的主键id值【代码】

CREATE OR REPLACE FUNCTION SEQ1 (v_bname in VARCHAR2) return NUMBER isv_bcount NUMBER; BEGINexecute immediate ‘select count(*) from ‘||v_bname into v_bcount;dbms_output.put_line(v_bname||‘------------------‘||v_bcount); return(v_bcount+1);end SEQ1;oracle使用execute immediate方式完成函数动态传入表名并操作 返回新的主键id值标签:rac exec tput select 函数 turn ber output acl 本文...

Oracle数据库之操作符及函数【代码】【图】

工资加1000 select empno,ename,job,sal+1000 from emp;3、比较操作符:-- 比较运算符(between and包头不包尾) select * from emp where sal between 1000 and 2000;(不等于是!= , 在mysql中是<> ) 4、逻辑操作符:and or not --查询奖金不为空的员工信息 select * from emp where comm is not null; 5、集合操作符: 将两个查询的结果组合成一个结果:select sid from t_score where score>=70 and cid = ‘01‘...

Oracle中的字符串类型及相关函数详解【图】

1、概述 本文介绍String类型及相关的函数,基于当前最新的Oracle 12c 为基础作介绍。 下文将字符串简称为串。Oracle函数的工作方式有两种: 1、根据旧的对象创建新的对象——他们对原来的信息进行修改,如改变字母的大小写。 2、告诉用户有关的信息,如一个单词或句子中有几个字符。后续会更新另外两种处理文本的方式:Oracle中的正则表达式 和 Oracle Text工具,等文章编辑完成,会在此处添加链接。 Oracle中主要有两种字符串类型...

oracle中的trim函数

trim(‘字符1‘ from ‘字符串2‘) ,字符1只能是单个字符。 1. trim()删除字符串两边的空格。2. ltrim()删除字符串左边的空格。3. rtrim()删除字符串右边的空格。4. trim(‘字符1‘ from ‘字符串2‘) 分别从字符2串的两边开始,删除指定的字符1。5. trim([leading | trailing | both] trim_char from string) 从字符串String中删除指定的字符trim_char。leading:从字符串的头开始删除。trailing:从字符串的尾部开始删除。borth:...

Oracle学习(十二)标量函数【代码】

大写转换 LCASE()小写转换--把查询结果对应的列进行大写转换 SELECT UCASE(列) FROM 表;--把查询结果对应的列进行小写转换 SELECT LCASE(列) FROM 表;SUBSTR()提取字符--从文本字段中提取字符PS:Oracle 中没有 MID 函数,substr 函数有类似功能 /* column_name 必需。要提取字符的字段。 start 必需。规定开始位置(起始值是 1)。 length 可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。 */ SELECT SUBS...

【Oracle】【34】ceil和floor函数【代码】

ceil(n) :取大于等于数值n的最小整数; floor(n):取小于等于数值n的最大整数; 正文:-- 10 select ceil(9.3) from dual;-- 9 select floor(9.3) from dual;-- -9 select ceil(-9.3) from dual;-- -10 select floor(-9.3) from dual;参考博客: Oracle中trunc函数、round 函数、ceil函数和floor函数的使用 - 舒山 - 博客园https://www.cnblogs.com/yw0219/p/5789664.html【Oracle】【34】ceil和floor函数标签:span ora blan...

oracle 内置函数【代码】

sql常用内置函数 --数学运算函数 select abs(-10) from dual; --去绝对值 select floor(1.1) from dual;--向下取整 select ceil(1.1) from dual;--向上取整 select ceil(-1.1) from dual;--向上取整 select round(1.5) from dual;--四舍五入 select sum(sal) from emp;--统计数字和 select sqrt(4) from dual; --开方 select trunc(1234.5678,3) from dual;--截取小数点后几位 select trunc(1234.5678,-3) from dual;--截取小数点前...

Jpa-Spec oracle函数bitand,instr等扩展【代码】

Page<Person> findAll(SearchRequest request) {Specification<Person> specification = Specifications.<Person>and().eq(StringUtils.isNotBlank(request.getName()), "name", request.getName()).gt("age", 18).between("birthday", new Date(), new Date()).like("nickName", "%og%").build();Sort sort = Sorts.builder().desc(StringUtils.isNotBlank(request.getName()), "name").asc("birthday").build();return personRep...

ORACLE创建自定义函数返回varchar类型【图】

需求描述:两张表,如下,需要查询tmp1表中id_new在tmp2中的nameselect from tmp1; select from tmp2;方法一:好处:简单,直接sql展示劣处:如果主表数据量太大,十几亿的话,性能会大大下降,此时建议第二种方法select a.id_old,to_char(wm_concat(distinct a.id_new)) id_new,to_char(wm_concat(distinct b.name)) namefrom tmp2 b,(select a.id_old, regexp_substr(a.id_new, ‘[^,]+‘, 1, level) id_newfrom tmp1 aconnect ...

oracle-常用sql语句和函数

dbms_random.value(1,7) 获取(1,7)之间的随机数 结果为:3.38380283953849 select dbms_random.value(1,7) from dual --获取随机数 select dbms_random.random from dual --nvl 含义是:NVL(expr1,expr2) 如果oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则显示第一个参数本来的值。 select nvl(‘‘,4) from dual;--求取余数 正负号与除数一致 结果为: -1 select mod(-10,3) from ...

oracle函数【代码】【图】

MONTHS_BETWEEN函数返回两个日期之间的月份数。 若天数不够一月或多于一月,则以31为分母计算 oracle之TRUNC函数 TRUNC(number,num_digits) Number 需要截尾取整的数字。 Num_digits 用于指定取整精度的数字,Num_digits 的默认值为 0。如果Num_digits为正数,则截取小数点后Num_digits位;如果为负数,则先保留整数部分,然后从个位开始向前数,并将遇到的数字都变为0。TRUNC()函数在截取时不进行四舍五入,直接截取。...

oracle 常用sql 经典sql函数使用 sql语法【代码】

各种树操作, 用来查询表中带有子父节点的信息 Oracle 树操作(select…start with…connect by…prior)select m.org_idfrom sm_organ mstart with m.org_id = 00000connect by prior m.org_id = m.parent_org_id; [查询org_id为‘00000’的所有父节点,并按倒叙排序] select distinct root,root_leve,org_Id from ( select sys_connect_by_path (org_id, /) as PATH,connect_by_root(org_id) as root,connect_by_root(org_leve) a...