java编码格式大讲解
oracle 分页:
-- 第一种
select *
from (select aed.*, row_number() over(order by aed.created_date) rw
from alarm_event ae, alarm_event_detail aed
where ae.id = aed.id)
where rw between 10 and 15;
-- 第二种
select *
from (select t.*, rownum rw
from (select aed.*
from alarm_event ae, alarm_event_detail aed
where ae.id = aed.id
order by aed.created_date) t
where rownum < 16)
where rw >= 10;
with 关键字 (解决子句中多次引用相同的查询块,或者解决多层嵌套查询时)下面中也有使用分析函数解决分组问题。
with t1 as
(select ai.accountid,
lb.businesssum,
lb.customerid,
lb.businesstype,
lb.loanterm,
bp.bar_code_no,
count(lb.putoutno) over(partition by ai.accountid, lb.businesssum, lb.customerid, lb.businesstype, lb.loanterm, bp.bar_code_no) ct,
row_number() over(partition by ai.accountid, lb.businesssum, lb.customerid, lb.businesstype, lb.loanterm, bp.bar_code_no order by lb.customerid) rw
from cfss.loan_balance lb
left join cfss.account_info ai
on lb.putoutno = ai.objectid
and ai.accountserialno = ''
left join cfss.business_putout bp
on bp.serialno = lb.putoutserialno
where lb.putoutdate >= '2018/06/28'
and lb.businesstype = '1702-SB-01'),
t2 as
(select lb.customerid, lb.normalbalance, lb.overduebalance
from cfss.loan_balance lb, t1
where lb.customerid = t1.customerid
and t1.ct > 1
and rw = 1
and lb.businesstype = '1702-SB-01'), t3 as
(select ci.certtype,
ci.certid,
sum(normalbalance) + sum(overduebalance) as balance
from t2, cfss.customer_info ci
where t2.customerid = ci.customerid
group by ci.certtype, ci.certid)
select t3.*, bc.creditsum, bc.customerid
from cfss.business_credit bc, t3
where bc.certtype = t3.certtype
and bc.certid = t3.certid
and balance > bc.creditsum;
开始 搜集统计信息。(搜集完成统计信息,可以使执行计划更优)
begin
dbms_stats.gather_table_stats(ownname => 'CFSS',
TABNAME => 'BUSINESS_PUTOUT',
cascade => true);
end;
分析和开窗函数
使用绑定变量 VS 不使用绑定变量
https://blog.csdn.net/Alen_Liu_SZ/article/details/80527834
- SQL> set timing on
- SQL> create table t1(id int);
- Table created.
- Elapsed: 00:00:01.18
- SQL> begin
- 2 for i in 1 .. 100000
- 3 loop
- 4 execute immediate 'insert into t1 values('||i||')';
- 5 end loop;
- 6 commit;
- 7 end;
- 8 /
- PL/SQL procedure successfully completed.
- Elapsed: 00:01:34.06
- SQL> set linesize 200
- SQL> col sql_text for a40
- SQL> col sql_id for a15
- SQL> select sql_text,sql_id,executions,parse_calls from v$sql
- 2 where sql_text like 'insert into t1 values%'
- 3 and rownum <= 10;
- SQL_TEXT SQL_ID EXECUTIONS PARSE_CALLS
- ---------------------------------------- --------------- ---------- -----------
- insert into t1 values(99739) 4hwu069b7w058 1 1
- insert into t1 values(99795) c3wc2p1y440n6 1 1
- insert into t1 values(99600) ggxrmk462s138 1 1
- insert into t1 values(99610) 8m3jrkgshh1bj 1 1
- insert into t1 values(99857) a8wn2bw9cw1ck 1 1
- insert into t1 values(99809) 87uzu2cggw1hq 1 1
- insert into t1 values(99714) bddx0bx62n1qz 1 1
- insert into t1 values(99559) cbgyw5tudc1yq 1 1
- insert into t1 values(99745) 2xngw3w9b829n 1 1
- insert into t1 values(99826) 7s29ajyy3h2nh 1 1
- 10 rows selected.
- Elapsed: 00:00:00.01
- SQL> select count(*) from v$sql
- 2 where sql_text like 'insert into t1 values%';
- COUNT(*)
- ----------
- 461
- Elapsed: 00:00:00.15
- SQL>
- SQL> alter system flush shared_pool;
- System altered.
- Elapsed: 00:00:00.07
- SQL> alter system flush buffer_cache;
- System altered.
- Elapsed: 00:00:00.46
- SQL> begin
- 2 for i in 1 .. 100000
- 3 loop
- 4 execute immediate 'insert into t1 values (:X)' using i;
- 5 end loop;
- 6 commit;
- 7 end;
- 8 /
- PL/SQL procedure successfully completed.
- Elapsed: 00:00:12.06
- SQL> select sql_text,sql_id,executions,parse_calls from v$sql
- 2 where sql_text like 'insert into t1 values%';
- SQL_TEXT SQL_ID EXECUTIONS PARSE_CALLS
- ---------------------------------------- --------------- ---------- -----------
- insert into t1 values (:X) d1f3fv8rt9j8t 100000 1
- Elapsed: 00:00:00.11
java编码格式大讲解的更多相关文章
- 第二十四节:Java语言基础-讲解数组的综合应用
数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...
- 1月中旬值得一读的10本技术新书(机器学习、Java、大数据等)!
1月中旬,阿里云云栖社区 联合 博文视点 为大家带来十本技术书籍(机器学习.Java.大数据等).以下为书籍详情,文末还有福利哦! 书籍名称:Oracle数据库问题解决方案和故障排除手册 内容简介 & ...
- java filechannel大文件的读写
java读取大文件 超大文件的几种方法 转自:http://wgslucky.blog.163.com/blog/static/97562532201332324639689/ java 读取一个 ...
- Java查询大文本
但JAVA本身缺少相应的类库,需要硬编码才能实现结构化文件计算,代码复杂且可读性差,难以实现高效的并行处理. 使用免费的集算器可以弥补这一不足.集算器封装了丰富的结构化文件读写和游标计算函数,书写简单 ...
- 【原创】用JAVA实现大文件上传及显示进度信息
用JAVA实现大文件上传及显示进度信息 ---解析HTTP MultiPart协议 (本文提供全部源码下载,请访问 https://github.com/grayprince/UploadBigFil ...
- 一句话了解JAVA与大数据之间的关系
大数据无疑是目前IT领域的最受关注的热词之一.几乎凡事都要挂上点大数据,否则就显得你OUT了.如果再找一个可以跟大数据并驾齐驱的IT热词,JAVA无疑是跟大数据并驾齐驱的一个词语.很多人在提到大数据的 ...
- java处理大文本方案
转载自:http://langgufu.iteye.com/blog/2107023 java处理大文件,一般用BufferedReader,BufferedInputStream这类带缓冲的Io类, ...
- 贝叶斯公式由浅入深大讲解—AI基础算法入门
1 贝叶斯方法 长久以来,人们对一件事情发生或不发生的概率,只有固定的0和1,即要么发生,要么不发生,从来不会去考虑某件事情发生的概率有多大,不发生的概率又是多大.而且概率虽然未知,但最起码是一个确定 ...
- java读大文件最快性能【转】
java读大文件最快性能 完全引用自: 几种读大文件方法的效率对比测试 据说1.88g只要5秒左右,未亲测. /** * 读大文件 * BufferedReader + char[] * @throw ...
随机推荐
- win32 用户自定义消息范围
WINDOWS自定义消息WM_USER和WM_APP WM_USER常量是Windows帮助应用程序定义私有窗口类里的私有消息,通常使用WM_USER+一个整数值,但总值不能超过0x7FFF. #de ...
- Django_模型
1. ORM 2. 简单使用 3. 外键 2.0以上的版本要这样写s_grade = models.ForeignKey(Grade,on_delete=models.CASCADE) 3. 修改表名 ...
- EAC3 Adaptive Hybrid Transform (AHT)
adaptive hybrid transform 由两个linear transforms级联组成. 第一个transform为MDCT,MDCT使用KBD window产生256个transfor ...
- 2019 ICPC徐州网络赛 E. XKC's basketball team(二分)
计蒜客题目链接:https://nanti.jisuanke.com/t/41387 题目大意:给定一组无序序列,从第一个数开始,求最远比这个数大m的数,与这个数之间相隔多少数字?如果没有输出-1,否 ...
- vue 生命钩子周期之理解
对于vue的初学者来说,理解vue的生命钩子周期是很有必要的.什么是生命钩子周期呢,顾名思义就是 “实例初始化” 到 “实例被销毁” 的过程. 理解vue的生命钩子周期,我们就可以更好的在项目中运 ...
- QQ发起聊天
QQ推广 网址: http://shang.qq.com/v3/widget.html 一键加群 实例: <a target="_blank" href="//sh ...
- 前端——语言——Core JS——《The good part》读书笔记——第三章节(Object)
本章介绍对象. 在学习Java时,对象理解为公共事物的抽象,实例为具体的个例,对象为抽象的概念,例如人为抽象的概念,具体的个例为张三,李四. Java对象种类多,包含普通类,JavaBean,注解,枚 ...
- linux 磁盘100% 清理
df -h 查看磁盘使用有一个vdb满了 df -i 查看inode 使用率 显示文件大小: du -sh /* du参数: -a : 列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而 ...
- Java8 Lambda使用指南
Java8 Lambda 的使用指南 原文地址:https://docs.oracle.com/javase/tutorial/java/javaOO/lambdaexpressions.html#s ...
- 安卓开发:打印Log
在iOS开发中使用NSLog进行打印调试,在安卓中使用的是Log.v(tag, msg);等进行打印调试. 参考:[https://blog.csdn.net/salary/article/detai ...