最近在进行数据查询优化的时候,发现自己对JDBC基础掌握的还不够,所有阅读了JDBC官方reference,并做了一个思维导图。如下:
其中大部分的知识都很容易了解,但是对于RowSet和一些高级特性还不了解,需要继续深入学习。另外JDBC只是一个规范,对于常用数据库(如Oracle和Mysql)的驱动,对于这些规范的支持是否全面,使用的时候要注意什么问题,都需要继续学习。...
分类:
数据库 时间:
2014-08-07 15:46:20
阅读次数:
233
在网上看到一篇介绍使用统计信息出现的问题已经解决方案,感觉写的非常全面。在自己看的过程中顺便做了翻译。由于本人英文水平有限,可能中间有一些错误。如果有哪里有问题欢迎大家批评指正。建议英文好的直接看原文:SQL Server
Statistics: Problems and Solutions
正文:
SQL Server统计信息协助查询优化器计算运行查询的最优方式. Holge...
分类:
数据库 时间:
2014-08-04 14:17:57
阅读次数:
461
在sql语句中使用 like模糊查询时,应该尽量避免%%,因为模糊查询是比较慢的,当出现这样的情况时,应该考虑优化。举个例子:我在表中查询2012 年创建的记录SELECT * FROM `component_data` WHERE creation_date LIKE '2012%'; 得到的时....
分类:
数据库 时间:
2014-08-01 19:05:32
阅读次数:
276
1、对于像状态之类的列,不是很多的,就可以加位图索引,对于唯一的列,就加唯一索引,其余的创建普通索引。2、尽量不要使用select * 这样的查询,指定需要查询的列。3、使用hits select /*+index(索引名称) index(索引名称)*/ supply_id from CSS_SUP...
分类:
数据库 时间:
2014-07-31 19:56:07
阅读次数:
335
一、SET STATISTICS IO(有关TSQL语句查询所产生的磁盘活动量)--显示有关由Transact-SQL 语句生成的磁盘活动量的信息SET STATISTICS IO ON--关闭有关由Transact-SQL 语句生成的磁盘活动量的信息SET STATISTICS IO OFF显示的...
分类:
数据库 时间:
2014-07-30 20:28:34
阅读次数:
289
这里把规范谓词表达式的部分就整理完了,阅读的顺序如下:
一、PostgreSQL代码分析,查询优化部分,canonicalize_qual
二、PostgreSQL代码分析,查询优化部分,pull_ands()和pull_ors()
三、PostgreSQL代码分析,查询优化部分,process_duplicate_ors
这里把
相关博文:PostgreSQL代码分析,查询优化部分,process_duplicate_ors...
分类:
数据库 时间:
2014-07-23 18:08:16
阅读次数:
225
查找重复的OR操作,即化简条件语句,假设WHERE条件为:(A=1 AND B=1) OR (A=1 AND C=1),可以化简为:A=1 AND (B=1 OR C=1),另外,这个函数中做了将树状的AND或OR语句平面化(flatten,或拉平)的工作,这两个工作主要体现在pull_ands()和pull_ors()两个函数中。...
分类:
数据库 时间:
2014-07-23 13:08:46
阅读次数:
276
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num...
分类:
数据库 时间:
2014-07-23 11:43:26
阅读次数:
309
这个函数处理这种情况,对于一个选择,SELECT * FROM TEST_A,TEST_B,TEST_C,TEST_D WHERE (A=1 AND B=1) OR (A=1 AND C=1) OR (A=1 AND D=1);
语句中的WHERE条件:(A=1 AND B=1) OR (A=1 AND C=1) OR (A=1 AND D=1)可以改写为(A=1)AND (B=1 OR C=1 OR D=1)...
分类:
数据库 时间:
2014-07-22 17:44:42
阅读次数:
394
最近在给一个客户做调优的时候发现一个很有意思的现象,对于一个复杂查询(涉及12个表)建立必要的索引后,语句使用的IO急剧下降,但执行时间不降反升,由原来的8秒升到20秒。 通过观察执行计划,发现之前的执行计划在很多大表连接的部分使用了Hash Join,由于涉及的表中数据众多,因此查询优化器选择使用...
分类:
数据库 时间:
2014-07-18 08:01:44
阅读次数:
346