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

Oracle学习(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:在...之前 ...

【小计】PostgreSQL实现Oracle的decode函数功能【代码】

create or replace function decode(variadic p_decode_list text[]) returns text as $$ declare -- 获取数组长度(即入参个数) v_len integer := array_length(p_decode_list, 1); -- 声明存放返回值的变量 v_ret text; begin /* * 功能说明:模拟Oracle中的DECODE功能(字符串处理, 其它格式可以自行转换返回值) * 参数说明:格式同Oracle相同,至少三个参数 * 实现原理: 1、VARIADIC 允许变参; 2、Oracle中的DECODE是拿第一...

Oracle开发常用函数【代码】

max 最大数 自动加 1create or replace function fun_getmaxlot(vend in varchar2 ,domain IN VARCHAR2,tag in varchar2 )RETURN VARCHAR2AS MAXVAL VARCHAR2(40);NEWIQC VARCHAR2(40);TT VARCHAR2(12); BEGINBEGINselect max(xsld_lot) into MAXVAL from xsld_det where xsld_lot like upper(tag)|| to_char(sysdate, ‘yyMMdd‘) || Upper(vend)||‘%‘ and UPPER(xsld_domain) = UPPER(domain);if(MAXVAL is n...

oracle-过程函数编程

过程函数编程 实践目的(1) 掌握存储过程、存储函数高级数据库对象的基本作用。(2) 掌握存储过程、存储函数的建立、修改、查看、删除操作。 实践要求(1) 记录执行命令和操作过程中遇到的问题及解决方法,注意从原理上解释原因。(2) 记录利用企业管理器管理存储过程、存储函数、触发器的方法。(3) 记录利用SQL*Plus和PLSQL DEVELOPER管理存储过程、存储函数的命令。 实践内容下列任务中涉及的数据表是SCOTT用户给出的表。1.创建存储...

Oracle中函数/过程返回多个值(结果集)【代码】

OR REPLACE FUNCTION A_Test(orType varchar2) RETURN SYS_REFCURSOR istype_cur SYS_REFCURSOR; BEGINOPEN type_cur FOR select col1,col2,col3 from testTable ;RETURN type_cur; END; (2)返回table类型的结果集: 首先定义一个行类型:CREATE OR REPLACE TYPE "SPLIT_ARR" AS OBJECT(nowStr varchar2(18))其次以此行类型定义一个表类型: CREATE OR REPLACE TYPE "SPLIT_TAB" AS TABLE of split_arr;定义函数(此函数完...

Oracle计算时间跨度的函数

显示距离当前时间的跨度-- 计算时间跨度:返回值为X天y时z分declare ln_day_count number(10); ln_hour_count number(10); ln_min_count number(10); ls_time_sent_last varchar2(20) := ‘2015-06-07 08:40:20‘; ls_timespan varchar2(100) := ‘‘;begin -- 计算天数 select floor(sysdate - To_date(ls_time_sent_last, ‘yyyy-mm-dd hh24-mi-ss‘)) into ln_day_count FROM dual; if ln_day_count !=...

ORACLE日期时间函数大全

ORACLE日期时间函数大全 TO_DATE格式(以时间:2007-11-02 13:45:25为例) Year: yy two digits 两位年 显示值:07 yyy three digits 三位年 显示值:007 yyyy four digits 四位年 显示值:2007 Month: mm number 两位月 显示值:11 mon abbreviated 字符集表示 显示值...

Oracle之ROW_NUMBER() OVER函数【图】

(PARTITION BY COLUMN ORDER BY COLUMN)  简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW_NUMBER() OVER (ORDER BY xlh DESC) 是先把xlh列降序,再为降序以后的每条xlh记录返回一个序号。 2row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)3实例: 初始化数据 create table emplo...

[转]Oracle dbms_random函数用法快速生成多条测试数据【图】

to_char(sysdate + rownum / 24 / 3600, ‘yyyy-mm-dd hh24:mi:ss‘) as inc_datetime, trunc(dbms_random.value(0, 100)) as random_id, dbms_random.string(‘$‘, 20) random_string from dual connect by level <= 100; 以上代码中并没有插入数据库中,若要插入只需要对sql上增加create table 表 as 或 insert into select方式 上面SQL是利用了Oracle数据库语法的几个实用小技巧实现的:1、利用O...

Oracle trunc()函数的用法

/**************日期********************/select trunc(sysdate) from dual --2011-3-18 今天的日期为2011-3-18select trunc(sysdate, ‘mm‘) from dual --2011-3-1 返回当月第一天.select trunc(sysdate,‘yy‘) from dual --2011-1-1 返回当年第一天select trunc(sysdate,‘dd‘) from dual --2011-3-18 返回当前年月日select trunc(sysdate,‘yyyy‘) from dual --2011-1-1 返回当年第一天select tru...

oracle函数listagg的使用说明(分组后连接字段)

name, listagg(ddate,‘ / ‘) within group (order by name) as ddate from aa group by name需要注意的事项如下: 1. 必须得分组,也就是说group by是必须的。 2. listagg函数的第一个参数是需要进行枚举的字段,也就是ddate;第二个参数是枚举数值之间的分隔符;同时还需要进行排序和分组within group (order by name) 本文转自:http://www.2cto.com/database/201304/204096.htmloracle函数listagg的使用说明(分组后连接字段...

自己配置的WAMP环境,扩展oracle函数库(oci)【代码】【图】

的zip(注意这里是系统版本) 截止到2015-06-25,下载地址如下http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 例如选择 Instant Client for Microsoft Windows (x64) 因为php扩展的是OCI,所以必须选对应版本的最全的那个,别的都没有OCI,这里下载可能需要有个账号,验证以后就可以下载,直接用连接下载不好用,没有的话注册一下就好了 第二部,需要下载win系统中的扩展包也就是.dll文件 下载地...

Oracle数据库,数据库,函数大全

1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii(‘A‘) A,ascii(‘a‘) a,ascii(‘0‘) zero,ascii(‘ ‘) space from dual; 2.CHR给出整数,返回对应的字符;SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C -- - 赵 A 3.CONCAT 连接两个字符串; SQL> select concat(‘010-‘,‘88888888‘)||‘转23‘ 高竞电话 from dual; 高竞电话 ---------------- 010-88888888转23 4.INITCAP 返回字符串并将字符...

常用Oracle函数记录【代码】

SQL> SELECT REPLACE(‘accd‘,‘cd‘,‘ef‘) from dual;REPLACE(‘ACCD‘,‘CD‘,‘EF‘) ------------------------- acef translate函数是在字符级别的代替,对应字符一一替换 translate(expr,from_string,to_string) SQL> select translate(‘acdd‘,‘cd‘,‘ef‘) from dual;TRANSLATE(‘ACDD‘,‘CD‘,‘EF‘) --------------------------- aeff translate函数在to_string位置为空,则返回值为空SQL> select translate(‘...