【Oracle语句(三)-- 字符函数】教程文章相关的互联网学习教程文章

Oracle经常使用函数

查看oracle版本号: SELECT * from v$version 一、trunc函数 1、TRUNC(for dates) TRUNC函数为指定元素而截去的日期值。其详细的语法格式例如以下: TRUNC(date[,fmt])当中:date一个日期值,fmt日期格式,该日期将由指定的元素格式所截去。忽略它则由近期的日期截去以下是该函数的使用情况: select trunc(to_date(‘2012-03-23 23:59:59‘,‘yyyy-mm-dd hh24:mi:ss‘)) from dual -- return date : 2012-3-23trunc(sysdate...

oracle 窗口函数over

select 字段2,字段3 max(字段6) over (partition by 字段2,字段3 )from table group by 字段2,字段3,字段5; 会报错的,因为max中的字段6没有在group 中。 可以使用子语句嵌套一下 让最顶层的select 不要出现group BY (SELECT * MAX() OVER() (SELECT .. FROM TABLE GROUP BY ..) ) 正确写法是 select t.* max(字段6) over (partition by 字段2,字段3 ) from(select 字段2,字段3,字段5,字段6 from table group b...

Oracle函数大全

以下ch表示字符,str表示字符串,num表示数字,column_name表示字段,table_name表示表名举一个例子,其他函数的使用方法类似select ascii(‘a‘) from dual;--这个返回a对应的ASCII码函数:ascii(ch);--返回字符ch的对应的十进制数asciistr(ch);union;--该操作符用于取得两个结果集的并集。当使用该操作符时,会自动去掉结果集中重复行。 union all;--该操作符与union相似,但是它不会取消重复行,而且不会排序。 intersect; --交...

Oracle trunc()函数

--Oracle trunc()函数的用法/**************日期********************/1.select trunc(sysdate) from dual --2011-3-18 今天的日期为2011-3-182.select trunc(sysdate, ‘mm‘) from dual --2011-3-1 返回当月第一天.3.select trunc(sysdate,‘yy‘) from dual --2011-1-1 返回当年第一天4.select trunc(sysdate,‘dd‘) from dual --2011-3-18 返回当前年月日5.select trunc(sysdate,‘yyyy‘) from dual -...

ORACLE统计分析函数【代码】【图】

( earnmonth varchar2(6), -- 打工月份 area varchar2(20), -- 打工地区 sno varchar2(10), -- 打工者编号 sname varchar2(20), -- 打工者姓名 times int, -- 本月打工次数 singleincome number(10,2), -- 每次赚多少钱 personincome number(10,2) -- 当月总收入 ) 然后插入实验数据:Sql代码 insert into earnings values(‘200912‘,‘北平‘,‘511601‘,‘大魁‘,11,30,11*30); insert int...

java python oracle推断字符串是否为数字的函数【代码】

javapublic boolean isNumeric(String str){ Pattern pattern = Pattern.compile("^-?[0-9]+\\.?[0-9]*"); Matcher isNum = pattern.matcher(str);if( !isNum.matches() ){return false; } return true; } pythondef isNum(value):try:int(value) + 1except:return Falseelse:return Trueoraclecreate or replace function func_is_number( sx in varchar) return int isx number;begin x:=to_number(sx);return 1;exceptionwhen o...

Oracle高级函数1------ Oracle 树操作(select…start with…connect by…prior)

oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。 1、准备测试表和测试数据1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 3...

一、Oracle分析函数入门【代码】【图】

--显示各部门员工的工资,并附带显示该部分的最高工资。SELECT E.DEPTNO, E.EMPNO, E.ENAME, E.SAL, LAST_VALUE(E.SAL) OVER(PARTITION BY E.DEPTNO ORDER BY E.SAL ROWS --unbounded preceding and unbouned following针对当前所有记录的前一条、后一条记录,也就是表中的所有记录 --unbounded:不受控制的,无限的 --preceding:在...之前 ...

ORACLE学习05-单行函数

select lower(‘HELLO WORLD‘) from dual; -- upper() 将字符串转大写 select upper(‘hello world‘) from dual; -- initcap() 将字符串首字母大写 select initcap(‘hEllo woRld‘) from dual;2,字符串截取-- substr(a,b) 从a中,第b位开始取,取右边所有的字符 select substr(‘Hello World‘,4) from dual; -- substr(a,b,c) 从a中,第b位开始取,取c位 select substr(‘Hello World‘,4,4) from dual; -- lpad/rpad...

Oracle开发之窗口函数 rows between unbounded preceding and current row

select trunc(order_dt) day , sum (sale_price) daily_sales, avg ( sum (sale_price)) over ( order by trunc(order_dt) range between interval ‘ 2 ‘ day preceding and interval ‘ 2 ‘ day following) five_day_avg from cust_order where sale_price is not null and order_dt between ...

oracle 中的round()函数、null值,rownum【代码】【图】

传回一个数值,该数值按照指定精度进行四舍五入运算的结果。 语法:round(number[,decimals]) Number:待处理的函数 Decimals:精度,默认为0;Select round(123.456,0) as a,round(123.456,1) as b,round(123.456,-1) as c from dual; null值: NULL值就是没有值或者缺值。允许NULL值的列也允许在插入行时不给出该列的值。不允许NULL值的列不接受该列没有值的行,换句话说,在插入或更新行时,该列必须有值。 每个表列或者是NULL值...

oracle decode函数用法【图】

DECODE函数是ORACLE PL/SQL是功能强大的函数之中的一个,眼下还仅仅有ORACLE公司的SQL提供了此函数,其它数据库厂商的SQL实现还没有此功能。DECODE有什么用途 呢? 先构造一个样例,如果我们想给智星职员加工资,其标准是:工资在8000元下面的将加20%;工资在8000元以上的加15%。通常的做法是。先选出记录 中的工资字段值? select salary into var-salary from employee,然后对变量var-salary用if-then-else或choosecase之类的流...

oracle 中的Ipad()函数【代码】【图】

本文基于转载: lpad函数从左边对字符串使用指定的字符进行填充。lpad意思是从左边填充的意思。语法格式如下: lpad( string, padded_length, [ pad_string ] );  string :准备被填充的字符串;padded_length:填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符; pad_string:填充字符串,是个可选参数,这个字符串是...

ORACLE分析函数(1)【代码】【图】

to_char(sysdate,‘"年"mm"月"dd"日"‘) from dual; 2. oracle分析函数语法2.1 ORDER BY select e.last_name,e.manager_id,e.salary,avg(e.salary) over() as emp_count --等同于(select avg(*) from employees)from employees e;select e.last_name,e.manager_id,e.salary,avg(e.salary) over(order by e.salary asc) as emp_count --按照阶梯取平均数from employees e;select e.last_name,e.manager_id,e.salary,e.job_id,avg...

Oracle数值处理函数 (绝对值、取整...)

select abs(-2) value from dual; 2.取整函数(大):ceil() select ceil(-2.001) value from dual;(-2) 3.取整函数(小):floor() select floor(-2.001) value from dual;(-3) 4.取整函数(截取):trunc() select trunc(-2.001) value from dual; (-2) 5.四舍五入:round() select round(1.234564) value from dual;(1.2346) 6.取平方:Power(m,n) select power(4,2) value from dual;(16) 7.取平方根...