Oracle
lixiaolin77
这个作者很懒,什么都没留下…
展开
-
存储过程常量的定义
create or replace package iconstant_pkg is g_boq_status_waiting_assign CONSTANT NUMBER := 10; --待分配 g_boq_status_assigned CONSTANT NUMBER := 20; --已分配 g_boq_status_init_publish原创 2011-10-22 10:23:29 · 3621 阅读 · 0 评论 -
Oracle 编写函数01
FUNCTION f_get_line_remark_desc_chn(pi_line_remark IN VARCHAR2) RETURN VARCHAR2 IS po_remark_desc_chn VARCHAR2(4000) := NULL; lv_sql VARCHAR2(4000) := NULL; BEGIN lv_sql原创 2012-03-08 14:57:22 · 404 阅读 · 0 评论 -
Oracle中利用rowNum对有order by结果集进行分页操作
在Oracle中,对查询结果集进行排序,然后在进行分页操作。利用rownum进行分页,确保在分页结果集不出现重复记录,sql语句可以进行如下写法。即:进行2层子查询操作。select * from (select row_.* , rownum rownum_ from (SELECT t.contract_no contractNo,原创 2012-03-07 15:54:58 · 400 阅读 · 0 评论 -
ORACLE 常用函数-数字函数和转换函数
三)数字函数1,取整函数(ceil 向上取整,floor 向下取整)select ceil(66.6) N1,floor(66.6) N2 from dual;2, 取幂(power) 和 求平方根(sqrt)select power(3,2) N1,sqrt(9) N2 from dual;3,求余select mod(9,5) from dual;4,返回固定小数位翻译 2012-03-06 17:47:20 · 317 阅读 · 0 评论 -
Oracle 临时表操作
七、临时表只在会话期间或在事务处理期间存在的表.临时表在插入数据时,动态分配空间 create global temporary table temp_dept(dno number,dname varchar2(10))on commit delete rows;insert into temp_dept values(10,'ABC');commit;se翻译 2012-03-06 17:48:44 · 293 阅读 · 0 评论 -
ORACLE 常用函数-日期函数
sysdate为系统日期 dual为虚表一)日期函数[重点掌握前四个日期函数]1,add_months[返回日期加(减)指定月份后(前)的日期]select sysdate S1,add_months(sysdate,10) S2,add_months(sysdate,5) S3 from dual;2,last_day [返回该月最后一天的日期] select last翻译 2012-03-06 17:45:35 · 223 阅读 · 0 评论 -
ORACLE 常用函数-其他函数和分组函数
五)其他函数user: 返回登录的用户名称 select user from dual; vsize: 返回表达式所需的字节数select vsize('HELLO') from dual;nvl(ex1,ex2): ex1值为空则返回ex2,否则返回该值本身ex1(常用) 例:如果雇员没有佣金,将显示0,否则显示佣金 select comm,翻译 2012-03-06 17:48:11 · 303 阅读 · 0 评论 -
ORACLE 常用函数-字符函数(可用于字面字符或数据库列)
二)字符函数(可用于字面字符或数据库列)1,字符串截取select substr('abcdef',1,3) from dual2,查找子串位置select instr('abcfdgfdhd','fd') from dual3,字符串连接select 'HELLO'||'hello world' from dual;4, 1)去掉字符串中的空格select ltr翻译 2012-03-06 17:46:12 · 268 阅读 · 0 评论 -
Oracle有关表的操作和运算符
一、有关表的操作1)建表create table test as select * from dept; --从已知表复制数据和结构create table test as select * from dept where 1=2; --从已知表复制结构但不包括数据2)插入数据:insert into test select * from dept;二、运算符算术运算符翻译 2012-03-06 17:41:05 · 379 阅读 · 0 评论 -
Oracle函数说明
Oracle函数:instr(str, instr, instr_start_position, instr_appearNumb) 搜索字符串instr在字符串str里面的位置所在。其中参数:后面两个参数可选。即可以不用。instr_start_position:指从字符串str开始搜索的位置,如果instr_start_position为负数则从后端向前端搜索。如:instr_s原创 2012-01-29 17:56:15 · 219 阅读 · 0 评论 -
Oracle 的 Lpad函数和Rpad函数的用法
在oracle的函数LPAD(String a,int length,String addString)和RPAD(String a,int length,String addString)Lpad和Rpad向字符串a左侧或右侧重复添加字符串addString,直到添加后的字符串长度为length,如果length长度小于字符串a本身,则截取本身字符串a,满足字符串刚好为length;原创 2012-01-29 11:24:48 · 416 阅读 · 0 评论 -
Oracle START WITH...CONNECT BY PRIOR的用法
今天发现在oracle中的select语句可以用START WITH...CONNECT BY PRIOR子句实现递归查询,connect by 是结构化查询中用到的,其基本语法是:select ... from tablename start with cond1 connect by cond2 where cond3; 简单说来是将一个树状结构存储在一张表里,比如转载 2012-01-29 11:04:16 · 360 阅读 · 0 评论 -
基于Oracle,SQL语句优化方法30例(03)
21. /*+ORDERED*/根据表出现在FROM中的顺序,ORDERED使ORACLE依此顺序对其连接.例如:SELECT /*+ORDERED*/ A.COL1,B.COL2,C.COL3 FROM TABLE1 A,TABLE2 B,TABLE3 C WHERE A.COL1=B.COL1 AND B.COL1=C.COL1;22. /*+USE_NL(TABLE)*/翻译 2011-11-11 15:33:12 · 536 阅读 · 0 评论 -
基于Oracle,SQL语句优化方法30例(01)
SQL语句优化方法30例在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:1. /*+ALL_ROWS*/表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化.例如:SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE EMP_N翻译 2011-11-11 15:31:59 · 266 阅读 · 0 评论 -
基于Oracle,SQL语句优化方法30例(02)
11. /*+INDEX_JOIN(TABLE INDEX_NAME)*/提示明确命令优化器使用索引作为访问路径.例如:SELECT /*+INDEX_JOIN(BSEMPMS SAL_HMI HIREDATE_BMI)*/ SAL,HIREDATEFROM BSEMPMS WHERE SAL12. /*+INDEX_DESC(TABLE INDEX_NAME)*/表明对表翻译 2011-11-11 15:32:40 · 290 阅读 · 0 评论 -
Oracle编程实现1-100偶数和的实现
DECLARE v_sum NUMBER := 0;BEGIN FOR i IN 1 .. 100 LOOP IF (i MOD 2 = 0) THEN --dbms_output.put_line(i); v_sum := v_sum + i; END IF; END LOOP; dbms_output.原创 2012-03-12 16:23:14 · 3384 阅读 · 1 评论