`
lndalian2000
  • 浏览: 28815 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

SQL 执行查询记录的速度

阅读更多

一个查询是否存在记录的SQL.如下:

select count(*) from table_A where condition = XXXX;

 

这是一个全表的检索.如果只是查询是否存在记录是否有更快的办法.

 

select 1 from  table_A where condition = XXXX and rownum  =1;

 

数据量不大的情况下count(*)和下面的SQL查询差别不大.(几毫秒的差别.多数是跟其他因素有关系)

 

网上的资料很多说的是Oracle.但是应该大部分的数据库都一样.

 

如果数据量足够庞大.查询次数特别多.比如:1W条的数据在一个100W条的数据库里逐个验证.

 

上面不同的查询语句能看出明显的效率高低.

 

count(*)效率较低.

 

但是也有比较特殊的情况.

 

当要查询的记录放置在数据库比较底层的位置的时候.

 

count(*)花费的时间和后一种SQL文的花费时间差不多.

 

项目中压力测试的时候就遇到一个奇怪的问题.

 

当用我们的数据跑的时候.3分钟能执行完.客户的数据却要跑几十分钟.

 

后来调查发现.客户的数据比较旧.似乎是放置在数据库底层的位置.每次查询几乎都要查询完全表数据才能找到.

 

所以效率大大降低.

 

只好采用别的方法提高程序的效率.

 

 

分享到:
评论

相关推荐

    SQLServer的性能调优:解决查询速度慢的五种方法

    有几个DMV提供有关查询统计信息,执行计划,最近查询等的数据。这些可以一起使用,以提供一些惊人的见解。例如,下面的查询可用于查找使用最多读取,写入,工作时间(CPU)等的查询。查询结果如下所示。下面的图片...

    SQLServer安全及性能优化

    我们可以在运行引擎优化顾问前运用sqlserver profiler记录一些事件,然后将跟踪结果存储为文件或者数据表,然后把这些提供给数据库引擎优化顾问,让它去分析。  提出合理的物理设计结构,物理设计结构包括数据库中...

    SQL智能查询分析器BSQL最新版

    (该模式下效率约比普通模式快5倍, 但 系统功能会受到点影响) 5, 增加显示查询数据记录行号功能 6, 增加系统"颜色"选项设置 7, 增加"展开至文件"功能, 用于提高列表弹出速度 以及显示字段中文名称....

    SQLServer2008分页存储过程和java调用

    调用存储过程进行分页查询速度快,尤其是数据量超过50万条的表非常重要,此代码是我们项目中使用的,实际使用情况稳定,也希望大家提出更加合理的修改建议。排序字段(必须!支持多字段) -- 条件语句(不用加where)-- ...

    SQL SERVER数据库批量更新程序 1.0.0.33

    (此选项在执行非查询语句时加快执行速度使用)。 本软件免费,注册功能仅用于统计使用人数,如需注册请加QQ:37605250索取,友情提示:请在QQ验证信息中注明CSDN,谢谢! 安装NET Framework 2.0 SP2框架后仍然无法...

    最简单的SQL Server数据库存储过程分页

    1.只需要提供Sql语句和每页的记录数,页数就可以了 2,速度超快哟,100W记录1~3秒就分出来了 3,对于存储过程特别好用

    SQL 优化原则

     在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统的响应速度就成为目前...

    迷你版SQL2000服务器

    +增加SQL Tips页,记录一些常用的SQL语句,方便查阅; ^标题栏解锁界面和密码修改页面进行调整,增加多语言支持。 1.2.2 *附加数据库时,修正输入库名时点取消后没有中止附加等错误; +增加面板锁,点击左上角的...

    SQL性能优化

     在FROM后面的表中的列表顺序会对SQL执行性能影响,在没有索引及ORACLE没有对表进行统计分析的情况下ORACLE会按表出现的顺序进行链接,由此因为表的顺序不对会产生十分耗服务器资源的数据交叉。(注:如果对表进行...

    达梦数据库_SQL语言手册

    达梦数据库_SQL语言手册.pdf 数据库快照定义语句 数据库快照删除语句 第章数据查询语句和全文检索语句 单表查询 简单查询 带条件查询 集函数 情况表达式 连接查询 子查询 标量子查询 表子查询 派生表子...

    迷你SQL2000

    +增加SQL Tips页,记录一些常用的SQL语句,方便查阅; ^标题栏解锁界面和密码修改页面进行调整,增加多语言支持。 1.2.2 *附加数据库时,修正输入库名时点取消后没有中止附加等错误; +增加面板锁,点击左上角的...

    SQL语言艺术

    这些例子大多来自于实际案例,对九种SQL经典查询场景以 及其性能影响讨论,非常便于实践,为你的实际工作提出了具体建议。本书 适合SQL数据库开发者、软件架构师,也适合DBA,尤其是数据库应用维护人 员阅读。 本书...

    数据库助手(SQL server)

    点击数据表名,显示数据表的 字段信息及数据记录(为了显示速度的要求,只显示前500行,如需要全部记录 请点击“执行”按钮)。 3。双击数据表制作Insert 脚本,省去程序开发人员手工写脚本。 ...

    基于VB6开发的轻量级数据库查询客户端工具(附源码和安装)

    基于VB6自主研发的轻量级数据库查询客户端工具,启动速度较快,所占资源较小。 附源码,对初学数据库编程的童鞋有所裨益! 1、支持SQLServer、Oracle、Sybase、DB2数据库平台 2、单句执行:可以提交单一的SQL语句...

    2009达内SQL学习笔记

    ”在SQL环境下执行Unix命令。 SQL语句是由简单的英语单词构成;这些英语单词称为关键字/保留字,不做它用。SQL由多个关键字构成。 SQL语句由子句构成,有些子句是必须的,有些是可选的。 在处理SQL语句时,其中...

    SQL语法大全

    sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表) (5) 数据记录统计函数: AVG(字段名) 得出一个表格栏平均值 COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据...

    oracle存储过程

    存储过程本身的执行速度非常快,而且,调用存储过程可以大大减少同数据库的交互次数。 第二、提高安全性。假如将SQL语句混合在ASP代码中,一旦代码失密,同时也就意味着库结构失密。 第三、有利于SQL语句的重用。...

    MySQL中exists关键字和in的区别有那些? SQL语句优化有那些方法? 查询速度很慢应该怎么办?

    in 先执行子查询,子查询的结果返回去重之后,再执行主查询,所以,子查询的返回结果越少,越适合使用in关键字。 二、SQL语句的优化方式有那些?  1. 尽量避免非操作符的使用。在索引列上用NOT,等非操作符会导致...

    SQL中Truncate的用法

    但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源更少。下面介绍SQL中Truncate的用法 当你不再需要该表时, 用 drop;当你仍要保留该表,但要删除所有记录时, 用 truncate;当你要删除部分记录时...

    如何提高MYSQL数据库的查询统计速度 select 索引应用

    从大多数系统的应用实例来看,查询操作在各种数据库操作中所占据的比重最大,而查询操作所基于的SELECT语句在SQL语句中又是代价最大的语句。举例来说,如果数据的量积累到一定的程度,比如一个银行的账户数据库表...

Global site tag (gtag.js) - Google Analytics