Oracle
ruiguang21
这个作者很懒,什么都没留下…
展开
-
oracle中常用函数大全
1、数值型常用函数 函数 返回值 样例 显示ceil(n) 大于或等于数值n的最小整数 select ceil(10.6) from dual; 11floor(n) 小于等于数值n的最大整数 select ceil(10.6) from dual; 10mod(m,n) m除以n的余数,若n=0,则返回m select mod(7,5) from ...原创 2018-04-23 13:57:01 · 34798 阅读 · 3 评论 -
oracle 先分组后获取每组最大值的该条全部信息展示
用一个实例说明:TEST表我现在想用MM字段分组,取得DD日期为最新的那一条详细数据SELECTa.* FROM( SELECT ROW_NUMBER () OVER ( PARTITION BY MM ORDER BY DD DESC ) rn, TEST.* FROM TEST ) a WHEREa.rn =1执行结果如下:...原创 2018-07-06 17:24:56 · 6653 阅读 · 0 评论 -
oracle中with as 的用法
select * from emp;select * from empinfo;truncate table empinfoinsert into empinfo(empno,ename,job,mgr,HIREDATE)with temp_ as(select empno,ename,job,mgr from emp), temp as ( select * from emp ) ...原创 2018-06-14 15:37:45 · 740 阅读 · 0 评论 -
Oracle的函数function
create or replace function fun_emp(prm_choice in number) return sys_refcursor is empcursor sys_refcursor; begin if prm_choice=1 then ...原创 2018-05-24 11:27:16 · 1648 阅读 · 0 评论 -
分支case的用法
----分支case的用法 declare v_number number(4):=3; v_string varchar2(20):='abc'; begin case v_number when 1then dbms_output.put_line('v_number is'||1); ...原创 2018-05-23 15:43:19 · 358 阅读 · 0 评论 -
oracle的loop等循环语句
--loop循环用法 (输出1到10) declare v_num number(2) := 0; begin loop v_num := v_num + 1; exit when v_num > 10; --上面退出循环也可以用下面3行 /* if(v_num > 9) then exit; end ...转载 2018-05-23 15:29:35 · 978 阅读 · 0 评论 -
Oracle中的loop循环实现方式
--loop ...exit; when ...end loop; 大于2000的薪资 --select * from emp where emp.sal>2000 ; declare temp_salary emp.sal%type; --%type:通常是指某行某列数据类型 一个字段 ...原创 2018-05-23 15:19:14 · 5504 阅读 · 0 评论 -
oracle 存储过程返回 结果集 table形式
--sys_refcursor 和 cursor 优缺点比较优点比较优点一:sys_refcursor,可以在存储过程中作为参数返回一个table格式的结构集(我把他认为是table类型,容易理解,其实是一个游标集), cursor 只能用在存储过程,函数,包等的实现体中,不能做参数使用。优点二:sys_refcursor 这东西可以使用在包中做参数,进行数据库面向对象开放。哈哈。我喜欢。curs...原创 2018-05-23 13:50:23 · 11814 阅读 · 0 评论 -
PL/SQL语句块基本语法(ORACLE存储过程,函数,包,游标)
1、 PL/SQL语句块PL/SQL语句块只适用于Oracle数据库,使用时临时保存在客户端,而不是保存在数据库。基本语法:declare 变量声明、初始化begin 业务处理、逻辑代码exception 异常捕获end; 变量声明:<变量名> <类型及长度> [:=<初始值>] 例:v_name varchar2(20):=’...转载 2018-05-23 13:49:07 · 746 阅读 · 0 评论 -
orcale存储过程,无参数,输入参数,输出参数,输出入参数的存储过程
--存储过程 存储过程+包 包+包体select * from emp;--1.无参数的存储过程create or replace procedure sp_emp_proc as--声明语句段v_name varchar2(200);begin--执行语句段 select ename into v_name from emp where empno=7788; db...原创 2018-05-23 11:38:48 · 2679 阅读 · 0 评论 -
Oracle 查看表中重复的记录,以及去除表中的重复记录
--查看表中重复的记录 select tscw.L_SEC_KEY as L_BOND_KEY ,---债券内码 to_date(twcb.b_info_carrydate,'yyyyMMdd') as D_BEGIN,--计息起始日 count(*) from twind_cbondcf twcb left join TDW_SEC_CODE_WI...原创 2018-07-06 18:07:39 · 706 阅读 · 0 评论