代码改变世界

Oracle如何按时间段取值-老生常谈的话题了.

2010-04-20 15:32 by Tracy., 998 阅读, 0 推荐, 收藏, 编辑
摘要:在这个转的帖子中,又一次我引了这种类型的帖子了,其实挺简单的,反正记载下吧.SQL如何按时间段取值 下面这张表中(table A),我如何以日期(星期)为段取值,还请赐教,谢谢table A:name date qty--------------------------------------------------------------------A91111 2010/01/4 10A922... 阅读全文

Oracle10g中又一个行列转换的例子.

2010-04-20 13:43 by Tracy., 2970 阅读, 0 推荐, 收藏, 编辑
摘要:这个网上把例子拿来的,当然这里只是另外做个例子,其实,11g中有更好的解决方式,有个pivot函数.在我这个帖子中有介绍,这里就当大家再熟悉下10g中处理类似问题的方法吧。http://www.cnblogs.com/miley/archive/2010/04/16/1713327.html源表: NUMDR_ID PE_ID SEQ_NUM DOB_DATE NAME 10 10 10 1... 阅读全文

转:Oracle中Update的一个写法,注意异常ORA-01779

2010-04-16 14:55 by Tracy., 6085 阅读, 1 推荐, 收藏, 编辑
摘要:最近学到update的另一种写法,是以前自己从来没有使用过的,看了一下文档,也没有找到很详细的说明。这种update方式其基础是建立在Query中的,所以可以确保使用CBO而非RBO,可以在大表的更新时明显得提高效率。在这里记录一下基本的方法: SQL> create table a ( id int, a1 varchar2(25) ); SQL> create table b ( ... 阅读全文

转:Oracle的SQL语法提示30例,INDEX_JOIN,ORDERED,USE_NL,LEADING...

2010-04-16 14:13 by Tracy., 1032 阅读, 0 推荐, 收藏, 编辑
摘要:网上转的,比较简单的介绍.方便时候可以参考一下大家.在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHER... 阅读全文

转:Oracle11g面向开发人员的重要新特性:Pivot 和 Unpivot

2010-04-16 10:56 by Tracy., 654 阅读, 0 推荐, 收藏, 编辑
摘要:Pivot 和 Unpivot使用简单的 SQL 以电子表格类型的交叉表报表显示任何关系表中的信息,并将交叉表中的所有数据存储到关系表中。Pivot如您所知,关系表是表格化的,即,它们以列-值对的形式出现。假设一个表名为 CUSTOMERS。 SQL> desc customersName Null? Type----------------------------------------... 阅读全文

Miley's Oracle讲堂第一课:怎么使用dbms_xplan.display_cursor观察执行计划.

2010-04-16 10:14 by Tracy., 2863 阅读, 1 推荐, 收藏, 编辑
摘要:在实际使用中,很少有文章介绍如何看执行计划的.本文希望能抛砖引玉,给大家介绍下这方面的内容。首先,从oracle10g开始,oracle开始提供一个新功能dbms_xplan.display_cursor,我们不需要考虑看什么plan_table还是v$sql_plan了。当然你使用这个功能你需要有这些视图“v$session”, “v$sql”, ... 阅读全文

转:Oracle同义词与序列基本使用

2010-04-15 16:00 by Tracy., 483 阅读, 0 推荐, 收藏, 编辑
摘要:同义词:同义词是一个对象的替代名称  作用:利用同义词可以很方便地操纵不同用户模式下的对象。  通过select user from dual查看当前使用的用户。  访问其它用户模式下的表:  select * from scott.dept; 表示查看scott用户模式下的dept表数据。  同义词分为private 和 public,private仅创建的用户可以使用。public则所有用户都... 阅读全文

Oracle:Jobs-DBMS_SCHEDULER的使用方法及脚本.

2010-04-15 15:57 by Tracy., 1738 阅读, 0 推荐, 收藏, 编辑
摘要:Create Schedule:CALL DBMS_SCHEDULER.drop_job ('TMS_TESTING_ROUTES_JOB');CALL DBMS_SCHEDULER.drop_program ('TMS_TESTING_ROUTES_PROG');CALL DBMS_SCHEDULER.drop_schedule ('TMS_TESTING_ROUTES_SCHED');BEGI... 阅读全文

Oracle:Decode在时间范围中的使用.

2010-04-15 15:55 by Tracy., 2679 阅读, 1 推荐, 收藏, 编辑
摘要:数据表里有一个字段叫test_Time,存储的内容为测试时间,yyyy-mm-dd HH24:Mi:SS,我在做查询的时候需要下一个sql,需要select test_time出来,如果test_Time的HH24:Mi:SS在7:00:00和19:00:00返回白班,否则返回夜班,这个decode不 知道怎么写,我尝试过直接把time的小时截取出来,但是不知道如何比较,不能转换为数字类型的出来,... 阅读全文

Oracle:物化视图创建及刷新的脚本.

2010-04-15 15:50 by Tracy., 2254 阅读, 0 推荐, 收藏, 编辑
摘要:SET DEFINE OFF;DROP MATERIALIZED VIEW TMS.TMS_LOCATION;CREATE MATERIALIZED VIEW TMS.TMS_LOCATION TABLESPACE TMSDATANOCACHELOGGINGNOCOMPRESSNOPARALLELBUILD IMMEDIATEREFRESH FORCE ON DEMANDWITH PRIMARY ... 阅读全文

转:Oracle中的带参数的视图

2010-04-15 15:45 by Tracy., 568 阅读, 0 推荐, 收藏, 编辑
摘要:创建存储过程createorreplacepackagepkg_pvisprocedureset_pv(pvvarchar2);functionget_pvreturnvarchar2;end;createorreplacepackagebodypkg_pvisvvarchar2(20);procedureset_pv(pvvarchar2)isbeginv:=pv;end;functionget... 阅读全文

Oracle三种集合数据类型的比较

2010-04-15 15:42 by Tracy., 3727 阅读, 1 推荐, 收藏, 编辑
摘要:PL/SQL中没有数组的概念,他的集合数据类型和数组是相似的。在7.3以前的版本中只有一种集合,称为PL/SQL表,在这之后又有两种集合数据类型:嵌套表和varray。其中varray集合中的元素是有数量限制的,index_by表和嵌套表是没有这个限制的。index-by表是稀疏的,也就是说下标可以不连续,varray类型的集合则是紧密的,他的下标没有间隔。index_by表不能存储在数据库中,但... 阅读全文

转:Oracle 10g批量绑定forall bulk collect

2010-04-15 15:37 by Tracy., 458 阅读, 0 推荐, 收藏, 编辑
摘要:批量绑定可以通过减少在PL/SQL和SQL引擎之间的上下文切换(context switches )以此提高性能。批量绑定(Bulk binds)主要包括:(1) Input collections, use the FORALL statement,用来改善DML(INSERT、UPDATE和DELETE) 操作的性能。(2) Output collections, use BULK COLLE... 阅读全文

转:oracle10g新功能,log error的实验

2010-04-15 15:35 by Tracy., 1541 阅读, 0 推荐, 收藏, 编辑
摘要:oracle10g新功能,log error的实验当你通过DML语句对一个表进行DML操作时,如果一个违反某种约束的错误记录发生,则整个事务会中止并回滚,这样会严重影响数据的刷新和浪费系统的性能,为了解决这种问题,oracle10g提供了一个错误记录日志表的功能,拿insert操作举例,得用该功能可以将一个源记录集合中满足约束条件的记录插入目的表中,而将违反约束的记录插入错误日志表,这样既充分利用... 阅读全文

转:Oracle 能否实现SQL Sever类似的功能

2010-04-15 15:29 by Tracy., 243 阅读, 0 推荐, 收藏, 编辑
摘要:Oracle 能否实现SQL Sever类似的功能(见本贴)?SQL Server 代码如下:Select name from employee执行结果:name --------------------冯民 杨涛 陈云 曾小红 陈翠declare @a varchar(2000)set @a=''Select @a=@a + name from employeeSelect @a as name... 阅读全文