摘要:
查询表中的记录总数的语法就是SELECT COUNT(*) FROM TABLE_NAME。这可能是最经常使用的一类SQL语句。 本文讨论怎样才能最快的得到这个记录数。本文纯粹主要是理论上的讨论,文章中很多内容(如常数索引)对实际的指导意义不大。 在具体描述之前,强调几个前提: 首先表中的记录数不能太少,否则讨论的意义就不大了,在我下面的例子中记录数是3万左右,其实这个数量级还是比较小,不过已经能... 阅读全文
摘要:
1 SQL server 2005中新增的排序函数及操作 SELECT YEAR(BirthDate), ROW_NUMBER() OVER(ORDER BY YEAR(BirthDate)) AS 'RowNumber',/**//* 按年产生一个唯一的序号 */ ROW_NUMBER() OVER(PARTITION BY YEAR(BirthDate) ORDER BY Bir... 阅读全文
摘要:
*环境:windowsXP + Oracle10gR2*AutoTRACE是分析SQL的执行计划,执行效率的一个非常简单方便的工具*/ AUTOTRACE是一项 SQL*Plus 功能,自动跟踪为 SQL 语句生成一个执行计划并且提供与该语句的处理有关的统计。 SQL*Plus AUTOTRACE 可以用来替代 SQL Trace 使用,AUTOTRACE 的好处是您不必设置跟踪文件的格式,并且... 阅读全文
摘要:
配置AUTOTRACE的一种方法AUTOTRACE是Sql*Plus中的一个工具,可以显示所执行查询的解释计划(explain plan)以及所用的资源。 配置AUTOTRACE的方法不止一种,以下是Tom采用的方法:(1)作为system登录SQL*Plus,运行[ORACLE_HOME]/rdbms/admin/utlxplan.sql 以下是该脚本的主要内容: RemRem This... 阅读全文
摘要:
我们在实际工作中经常要看某个sql语句的执行计划,例如: 在sqlplus使用命令SET AUTOTRACE ON后,执行计划显示如下: SQL>set autotrace on SQL> select count(*) from emp; COUNT(*)---------- 12 Execution Plan----------------------------------... 阅读全文
摘要:
优化数据库大幅度提高Oracle的性能 几个简单的步骤大幅提高Oracle性能--我优化数据库的三板斧。 数据库优化的讨论可以说是一个永恒的主题。资深的Oracle优化人员通常会要求提出性能问题的人对数据库做一个statspack,贴出数据库配置等等。还有的人认为要抓出执行最慢的语句来进行优化。但实际情况是,提出疑问的人很可能根本不懂执行计划,更不要说statspack了。而我认为,数据库优化,应... 阅读全文