随笔分类 -  Oracle

摘要:ora_hash函数用来返回分区号,而dbms_rowid.rowid_object()函数用来返回object_idselect dbms_rowid.rowid_object(rowid) obj_id, ora_hash ( id, 31, 0) part_id ,count(*) froms... 阅读全文
posted @ 2015-07-12 23:02 Jerry_Chen 阅读(3087) 评论(0) 推荐(0) 编辑
摘要:也许有很多种方法,这里只是书上学到的一种方法with a as (select grp_factor from (select distinct grp_factor from numbers where id < 10 order by grp_factor) t where rownum <= ... 阅读全文
posted @ 2015-07-09 21:12 Jerry_Chen 阅读(520) 评论(0) 推荐(0) 编辑
摘要:今晚很好奇想知道Oracle下有没有APPLY子句?如果有那怎么实现SQL Server下的TOP + APPLY。结果自己写了个例子。with a as (select grp_factor from (select distinct grp_factor from numbers where i... 阅读全文
posted @ 2015-07-07 23:59 Jerry_Chen 阅读(324) 评论(0) 推荐(0) 编辑
摘要:除了Pivot和Unpivot这两个函数,还有像CASE WHEN + 聚合函数像MAX,SUM这类的来完成。今天发现Oracle下居然有这样一个和SQL SERVER 2012以后新增的新函数叫IIF相似功能的函数叫decodeSELECT * FROM (SELECT job, ... 阅读全文
posted @ 2015-07-07 23:41 Jerry_Chen 阅读(347) 评论(0) 推荐(0) 编辑
摘要:用hierachical query,即connect by配合dual表生成序列,mod这个是取余函数,生成group factor。最后面的connect by rownum <= 100可以替换为connect bylevel <= 100select case when mod(rownum... 阅读全文
posted @ 2015-07-05 16:49 Jerry_Chen 阅读(755) 评论(0) 推荐(0) 编辑
摘要:Oracle中的Connect By... Start With语句实现了递归查询或者树状查询。Connect By Prior 一方为起始(root)的ID参考:http://www.360doc.com/content/13/0422/16/11947209_280153192.shtmlhtt... 阅读全文
posted @ 2015-07-05 16:41 Jerry_Chen 阅读(230) 评论(0) 推荐(0) 编辑
摘要:Oracle下的日期时间函数和SQL SERVER真他妈不同。这个真需要时间适应。这里找到一篇博文讲到许多例子。挺全的。http://www.cnblogs.com/kerrycode/archive/2011/04/27/2029906.html这里还有篇博文讲到Extract的用法。这个函数可以... 阅读全文
posted @ 2015-07-02 23:30 Jerry_Chen 阅读(336) 评论(0) 推荐(0) 编辑
摘要:刚学Oracle,学习学习别人的代码。这段代码时从下面的博文中摘取的:http://www.cnblogs.com/mq0036/p/4155774.htmldeclare l_dept integer := 20; currtime date := sysdate; l_nam... 阅读全文
posted @ 2015-07-02 22:52 Jerry_Chen 阅读(201) 评论(0) 推荐(0) 编辑
摘要:SELECT TRUNC(10.99999,2), round(10.08999,2), CEIL(10.01), FLOOR(10.9999) FROM dual;结果:TRUNC是直接截断小数位ROUND是四舍五入CEIL和FLOOR则是和SQL SERVER一样返回最大整数值和最小整数值。 阅读全文
posted @ 2015-06-28 17:32 Jerry_Chen 阅读(168) 评论(0) 推荐(0) 编辑
摘要:select id, grp_factor,sum (id) over(partition by grp_factor order by id rows between unbounded preceding and current row) running_sumfrom NUMBERS wher... 阅读全文
posted @ 2015-06-28 17:11 Jerry_Chen 阅读(264) 评论(0) 推荐(0) 编辑
摘要:declare v_exists_table number;begin select count(*) into v_exists_table from all_tables where table_name = 'NUMBERS'; if v_exists_table 0 then e... 阅读全文
posted @ 2015-06-28 16:09 Jerry_Chen 阅读(624) 评论(0) 推荐(0) 编辑
摘要:SQL SERVER下生成随机数据干得多,可是到了Oracle下我就傻了。没用过Oracle,不知道该怎么办?SQL SERVER下依靠TABLESAMPLE或者CHECKSUM(NEWID())来做随机抽样,Oracle则有它自己的随机抽样方法。这里找到一篇文章讲得挺好的:http://www.c... 阅读全文
posted @ 2015-06-28 15:33 Jerry_Chen 阅读(1517) 评论(0) 推荐(0) 编辑
摘要:妈蛋。。作为一个使用了SQL SERVER有4 5年的程序猿,开始用Oracle真他妈不习惯。写法真他妈不一样。比如像写个像IF EXISTS(SELECT * FROM sys.tables WHERE name = 'xxxx') BEGIN DROP TABLE XXXX END这样的语句,发... 阅读全文
posted @ 2015-06-28 01:36 Jerry_Chen 阅读(5269) 评论(0) 推荐(0) 编辑
摘要:这里找到一篇博文对这两个用法的解释:http://www.cnblogs.com/rootq/archive/2008/09/23/1297400.html启用约束: enable( validate) :启用约束,创建索引,对已有及新加入的数据执行约束. eenable novalidate :启... 阅读全文
posted @ 2015-06-28 01:19 Jerry_Chen 阅读(919) 评论(0) 推荐(0) 编辑
摘要:Demo OneCREATE TABLE employees_demo( employee_id NUMBER(6), first_name VARCHAR2(20), last_name VARCHAR2(25)CONSTRAINT emp_last_name_nn_demo NOT NULL, ... 阅读全文
posted @ 2015-06-27 00:21 Jerry_Chen 阅读(502) 评论(0) 推荐(0) 编辑
摘要:GLOBAL TEMPORARY代表全局临时表临时表的元数据存储在数据字典里面只当第一条DML命令发生的时候才为这张表的段分配空间临时表数据的可见范围应该是会话级别或是事务级别的会话或者事务级别又建表时的ON COMMIT关键字决定,ON COMMIT DELETE ROWS代表事务级别,ON CO... 阅读全文
posted @ 2015-06-27 00:08 Jerry_Chen 阅读(1402) 评论(0) 推荐(0) 编辑
摘要:在OLAP这类系统或者DW这类数据库中,作为某份报表的数据源,我们常常需要在某个存储过程中编写复杂的运算代码来汇总数据。分析函数便具备这样的能力,引用多行的数据值来进行多层面的聚合运算,在数据子集中进行颗粒度级别的排序控制.分析函数不能嵌套,但是可以通过用视图或者表函数封装然后再套上一层分析函数语法... 阅读全文
posted @ 2015-06-24 00:10 Jerry_Chen 阅读(1208) 评论(0) 推荐(0) 编辑
摘要:SQL Server玩了有些年,最近想玩玩Oracle,于是想到装一台Oracle server来玩玩。第一次在Linux下安装Oracle,整个过程参考了一篇文章:http://blog.csdn.net/huangyanlong/article/details/45021171环境:VMWare... 阅读全文
posted @ 2015-06-22 13:21 Jerry_Chen 阅读(3577) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示