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

SQL语句优化

SQL语句的优化就是将性能较低的SQL语句转换达成同样目的性能优异的SQL语句
下面我们一起来看看一些可以优化SQL的方法,希望大家多提出意见我们共同学习或者是大家有什么好的优化方法可以提出来共享一下。
 
第一种优化(使用指定列代替”*”)
       使用“*”可以降低编写SQL语句的复杂度,但是却降低了SQL语句执行的效率。
 
通过SQL语句的执行过程我们来了解SQL语句的执行效率。当一条SQL语句从客户端发送到服务器。ORACLE需要执行以下步骤:
 
1.       在共享池中搜索SQL语句是否存在。
2.       验证SQL语句的语法是否正确。
3.       执行数据字典来验证表和列的定义。
4.       获取对象的分析锁,以便在语句的分析过程中对象的定义不会被改变。
5.       检查用户是否具有相应的操作权限。
6.       确定语句的最佳执行计划。
7.       将语句和执行方案保存到共享的SQL区
 
通过上面的第3条我们已经看出来了,如果我们用了“*”替代列的话就会执行我们的第三步,相反如果我们明确的指出了列ORACLE就不会去执行第三个步骤。
下面可以通过测试来看看:
SET TIMING ON
Select * from User
 
SET TIMING ON
Select user from User
通过上面两条语句的对比我们可以清楚的看出两条语句的执行时间的差别,如果数据较多更为明显。
 
第二(使用WHERE子句来替代HAVING)
使用HAVING子句过滤分组,也就是在分组之后过滤,因为行分组需要一段时间,所以应该尽量使用WHERE子句过滤行,减少分组的行数,也就减少了分组的时间,从而提高查询效率。
 
第三(使用“>=”替代“>”|使用“<=”替代“<”)
例如“某列<=8888”和“某列<8889”检索结果是一样的,但是效率并不是一样的。
使用“>=”替代“>”|使用“<=”替代“<”
上面两个运算的区别在于,如果使用“某列<8889”则ORACLE会定位到8889,然后再去找比8889小的数据,如果使用&ldquo


相关文档:

关于时间段的SQL(Orcale、SQL Server)查询

一、Orcale 时的查询
String hql = "from SmsTemplate t where 1=1 ";
 if (model != null && !"".equals(model.getEndTimes())&& null!=model.getEndTimes() ) {
   SimpleDateFormat dateFm = new SimpleDateFormat("yyyy-MM-dd"); //格式化当前系统日期
   Date ......

用SQL语句修改SQL表结构

最近修改数据库已经存在的表结构,发现用SQL语句能很好的修改表的结构。SQL数据库记录数非常庞大,如果想修改表的字段类型,使用企业管理器来更改字段类型,很多时候会超时,更改不成功,这个时候,可以用SQL语句来更改,以下为相应的代码实例:
1.更改字段类型长度
alert table 表 alert column 字段名 类型的长度
eg: ......

将数据库表中的数据转为sql中的insert语句

 set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
--将表数据生成SQL脚本的存储过程 ......

asp.net 制作安装包并自动安装SQL数据库

一).创建部署项目    
  1.   在“文件”菜单上指向“添加项目”,然后选择“新建项目”。    
  2.   在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格 ......

SQL Server安装程序无法获取ASPNET账户的系统账户信息

前些天安装了SQL Server2005,出了2个错误,最终在网上找到了解决办法,现整理一下。
错误一:
解决方法:
用aspnet_regiis实用工具卸载和重新安装一下就可以了。
具体的操作如下:
进入CMD:
输入 cd c:\windows\microsoft.net\framework\v2.0.50727,进入此文件夹目录下,运行aspnet_regiis -u卸载
然后运行as ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号