数据库查询之速度优化---游标定位

前言

两个单表,相同的数据,一个5条记录,一个10w条记录,进行查询,哪个快?

---------------------------author:PKF

---------------------------------time:2015-06-15

--------------------------------------qq:1327706646

1.带索引和不带索引

 这里的索引一般是指i主键id之类的,明显带索引的肯定要快于不带索引的

2.游标定位

游标好比咱们打开文件的句柄,通过句柄可以惊醒seek 定位锁定,还有就是安卓系统中list的上下滑动的行

3.查询引擎

查询大部分带索引引擎的,原理都和字典差不多,只是根据不同字段内容进行索引分类不同罢了。

4.查询过程

 从查询引擎和查询索引不同,查询快慢也不同,有hash和bTree、游标定位、

 从底层cpu 底层存储来看有寻址和cpu 的cache 命中率问题,

5.查询优化

http://bbs.csdn.net/topics/230007330

http://blog.chinaunix.net/uid-15211079-id-3043451.html

http://blog.163.com/[email protected]/blog/static/1244723422009713236167/

http://blog.chinaunix.net/uid-15211079-id-3043451.html 游标概念

https://technet.microsoft.com/zh-cn/library/ms191179(SQL.90).aspx 微软的游标引擎

https://technet.microsoft.com/zh-cn/library/ms191179(SQL.90).aspx

http://www.educity.cn/wenda/389451.html

http://www.cnblogs.com/shenlong/articles/1905218.html sql 查询原理

时间: 2024-11-10 06:00:11

数据库查询之速度优化---游标定位的相关文章

关联查询之速度优化

在有些关联表的数据比较多的情况,可以先筛选出一部分临时表.然后用临时表关联.优化速度从15s提升到3s 形式如 select * into #tempTable1 from Table1 where [email protected]_versionID select * into #tempTable2 from Table2 where [email protected]_versionID select * into #tempTable3 from Table3 where [email

50种方法优化SQL Server数据库查询(转载)

原文地址:http://www.cnblogs.com/zhycyq/articles/2636748.html 查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用

50种方法优化SQL Server数据库查询

新的关于数据库的内容.查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,没有优化 可以通

优化SQL Server数据库查询方法

SQL Server数据库查询速度慢的原因有很多,常见的有以下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,没有优

SQL Server数据库查询速度慢的原因和解决方法

问 SQL Server数据库查询速度慢的原因有很多,常见的有以下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8.sp_lock,sp_who,活动的用户查看,原因是读写竞争资源. 9.返回了不必要的行和列 10.查询语句不好,没

转载 50种方法优化SQL Server数据库查询

原文地址 http://www.cnblogs.com/zhycyq/articles/2636748.html 50种方法优化SQL Server数据库查询 查询速度慢的原因很多,常见如下几种: 1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2.I/O吞吐量小,形成了瓶颈效应. 3.没有创建计算列导致查询不优化. 4.内存不足 5.网络速度慢 6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷

SQLServer性能优化之 nolock,大幅提升数据库查询性能

公司数据库随着时间的增长,数据越来越多,查询速度也越来越慢.进数据库看了一下,几十万调的数据,查询起来确实很费时间. 要提升SQL的查询效能,一般来说大家会以建立索引(index)为第一考虑.其实除了index的建立之外,当我们在下SQL Command时,在语法中加一段WITH (NOLOCK)可以改善在线大量查询的环境中数据集被LOCK的现象藉此改善查询的效能. 不过有一点千万要注意的就是,WITH (NOLOCK)的SQL SELECT有可能会造成Dirty Read,就是读到无效的数据.

优化MySQL数据库查询

在优化查询中,数据库应用(如MySQL)即意味着对工具的操作与使用.使用索引.使用EXPLAIN分析查询以及调整MySQL的内部配置可达到优化查询的目的. 任何一位数据库程序员都会有这样的体会:高通信量的数据库驱动程序中,一条糟糕的SQL查询语句可对整个应用程序的运行产生严重的影响,其不仅消耗掉更多的数据库时间,且它将对其他应用组件产生影响. 如同其它学科,优化查询性能很大程度上决定于开发者的直觉.幸运的是,像MySQL这样的数据库自带有一些协助工具.本文简要讨论诸多工具之三种:使用索引,使用E

如何优化数据库查询

宏观: 1.缓存.在持久层或持久层之上做缓存. 从数据库中查询出来的数据先放入缓存中,下次查询时,先访问缓存,如果未命中则查询数据库. 2.表分区和拆分.无论是业务逻辑上的拆分还是无业务含义的分区. 3.提高磁盘速度.这包括RAID和其他磁盘文件分段的处理.主要的思想是提高磁盘的并发度(多个物理磁盘存放同一个文件). 微观: 表设计方面: 1.字段冗余.减少跨库查询和大表连接操作. 2.数据库表的大字段剥离.保证单条记录的数据量很小. 3.恰当地使用索引, 甚至是多级索引. 查询优化方面: 2.