易截截图软件、单文件、免安装、纯绿色、仅160KB

sql优化扫盲

1.oracle扫描的顺序为从下到上,从右到左
           所以我们要尽可能的把数据少的表放在后面,交叉表放在后面,最能过滤的条件放在后面
2.不要在索引上使用计算和not操作符
           索引一旦参与计算或使用了not操作符,oracle将会忽略这个索引
3.尽量使用in和and,尽量避免使用or,or会产生大量的过滤 ,直接导致逻辑读大量增加
4.必要时使用autotrace(sqlplus中有效,PL/SQL中无效)
           命令:set autotrace on;
           规则:尽量减少逻辑读,应该避免物理读,提高缓冲区命中率 ,最好保持在95%以上。
           recursive calls      递归调用
           db block gets       数据块读取
           consistent gets    一致性读取
           physical reads      物理读取
           redo size              产生的重做日志大小
逻辑读=consistent gets + db block gets
缓冲区命中率=(逻辑读-物理读)/逻辑读
一个进程可能对以后能够数据块中多个session。
sql优化最重常用的是办法是:审视sql语句
也可以执行这条sql来查找非常耗费空间的sql:
select sql_text ,sharable_mem from v$sql where sharable_mem > '100000' order by sharable_mem ;


相关文档:

SQL查询重复数据和清除重复数据


有例表:emp
emp_no   name    age    
    001           Tom      17    
    002       &nb ......

监控SQL Server2005数据库的运行状况

能监控SQL Server数据库运行的情况,对服务器来说都是一件非常重要的事,下面开始介绍。
Microsoft SQL Server 2005 提供了一些工具来监控数据库。方法之一是动态管理视图。动态管理视图 (DMV) 和动态管理函数 (DMF) 返回的服务器状态信息可用于监控服务器实例的运行状况、诊断问题和优化性能。
常规服务器动态管理对象包 ......

SQL语句:把统计结果按照特定的列值转换成多列

要求:查询每个老师所带毕业设计的汇总情况,毕业设计学生分本科、专科,院外、院内,要求得到的结果形式如下:
教师名 院内本科 园内专科 院外本科 院外专科 合计
相关的表有:学生表(包含学生层次)、教师表(教师名)、学生课题表(学生教师对应关系以及院内院外信息)。
SQL语句如下:
select
    ......

巧用SQL Server日期类型数据二进制输出计算时间差

1、SQL Server日期数据库内部表示及查询输出:
SQL Server内部对DateTime类型的表示是用8个字节来表示,其中前4个字节表示的数值为自1900年1月1日零时以来的天数,后四个字节是天数之外的有多少个1/300秒,这也说明SQL Server内部表示时间的精度为1/300秒,约3.3毫秒。
常规的SQL查询,正常日期输出格式为:yyyy-MM-dd hh: ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号