SELECT能干什么?Projection:查询表中指定列。Selection:查询表中指定行。Join:表与表之间做连接,要查看的数据放在多张表中,并且表与表之间的数据有关系。SELECT语句的基本语法:SELECT关键字后指定需要显示的列。FROM关键字后面指定包含这些列的表。为了演示SELECT命令,..
分类:
数据库 时间:
2015-08-21 09:38:39
阅读次数:
274
基于代价的优化器是很聪明的,在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语句的执行变得奇慢无比。此时就需要DBA进行人为的干预,告诉优化器使用我们指定的存取路径或连接类型生成执行计划,从而使语句..
分类:
数据库 时间:
2015-08-21 00:27:24
阅读次数:
376
我们知道,在sql语句解析的过程中,有一个过程叫优化。Oracle中有一个叫优化器的组件,专门来处理sql的优化。在考虑查询条件和对象引用的许多相关因素后,优化器能确定出执行SQL语句最有效的方式来。对于任何SQL语句,优化器优化的结果,可以极大地影响执行时间。Oracle优化器的..
分类:
数据库 时间:
2015-08-20 15:26:46
阅读次数:
217
访问路径是指Oracle找到用户需要的数据的方法,这些方法很少,包括:声名狼藉的全表扫描--人们不惜一切视图避免的(曲解的)访问路径。各种类型的索引扫描--这是人们感觉良好的访问路径(多数情况下是被曲解的)。通过hash或者rowid的方式直接访问,通常对于单数据行来说,是最..
分类:
数据库 时间:
2015-08-20 06:54:17
阅读次数:
221
本文讨论一下join技术背后的机制。我们知道常用的表连接有如下几种笛卡尔连接内连接左外连接右外连接全连接这些sql的写法,想必大家都很清楚了,那么这些连接的数据访问是如何实现的呢?nestedloop我们看如下查询SQL>altersessionsetoptimizer_mode=rule;
Sessionaltered.
..
分类:
数据库 时间:
2015-08-20 06:49:54
阅读次数:
350
读懂执行计划有什么用呢?执行计划贯穿Oracle调优始终。了解执行计划的真实执行过程,将有助于优化。对亍Oracle的原理理解有一定帮助。读懂执行计划,SQL调优的第一步。什么是SQLExecutionPlan执行计划?SQL是声明型语言,她只说我要去哪里,但很少告诉你到底如何去?SQL语句的..
分类:
数据库 时间:
2015-08-19 21:06:24
阅读次数:
279
1、安装完oracle数据库后,远程第一次无法登陆,需要进入sys用户后,更改以此后才有效。2、TNS去读取配置的时候,如果在环境变量中已经配置了 TNS_ADMIN 后,则直接从此目录下读取。3、path中配置至oracle客户端目录bin下,则可使用tnsping命令来测试连接。关于PLSQL查...
分类:
数据库 时间:
2015-08-19 12:48:17
阅读次数:
232
emp表有如下数据。SQL>selectename,deptnofromemp;
ENAME DEPTNO
----------------------------------------
SMITH 20
ALLEN 30
WARD 30
JONES 20
MARTIN 30
BLAKE 30
CLARK 10
SCOTT 20
KING 10
TURNER 30
ADAMS 20
JAMES 30
FORD..
分类:
数据库 时间:
2015-08-19 02:06:45
阅读次数:
213
根据Oracle学习之性能优化(二)游标中的描述,我们知道如下两条语句是不共享的。select*fromempwhereempno=7698;
select*fromempwhereempno=7566;这样就造成每次执行用户的查询都要进行硬解析,但是我们知道,其他这两个语句的执行计划应该是相同。那么有什么方法能避免不必要..
分类:
数据库 时间:
2015-08-18 19:46:05
阅读次数:
146
当向Oracle提交一个sql命令时,Oracle到底做了哪些事情?对这个问题有很好的理解,能帮助你更好的分析sql语句的优化。执行一条sql语句从开始到结束,需要经历4个步骤:分析--对提交的语句进行语法分析、语义分析和共享池检查。优化--生成一个可在数据库中用来执行语句的最佳计..
分类:
数据库 时间:
2015-08-18 06:50:52
阅读次数:
273