社区
ASP
帖子详情
40万数据的SQL查询,怎么优化select * from table,不优化要执行10秒啊
yc406740872
2010-12-03 10:39:36
40万数据的SQL查询,怎么优化select * from table,不优化要执行10秒啊,,我是查询全部字段,所以必须seelct * ,这样一来,页面要执行10秒才能被执行完,,怎么进行优化啊??
还有,就是 rs.recordcount ,查询总记录数,也要执行5秒,我在本地测试的,传上服务器,执行时间会更长,请问有什么方法解决吗??
...全文
1555
19
打赏
收藏
40万数据的SQL查询,怎么优化select * from table,不优化要执行10秒啊
40万数据的SQL查询,怎么优化select * from table,不优化要执行10秒啊,,我是查询全部字段,所以必须seelct * ,这样一来,页面要执行10秒才能被执行完,,怎么进行优化啊?? 还有,就是 rs.recordcount ,查询总记录数,也要执行5秒,我在本地测试的,传上服务器,执行时间会更长,请问有什么方法解决吗??
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liulei0102
2010-12-14
打赏
举报
回复
谁让你用“*”通配符的呢!你查啥写啥不就省事多了!
lenqen
2010-12-14
打赏
举报
回复
可能是游标问题,我通常用Forward Only,虽然这样不能用RECORDCOUNT属性,但效率高很多。
至于RECORDCOUNT属性,可以用MOVE NEXT加一个计数器实现。
Nichel168
2010-12-14
打赏
举报
回复
select * 这样写很费资源的。还是要需要查询的字段列出来。
测试后执行速度就要稍好些。
还有查询记录数的时候,重新写个sql查询,你看那种方式更快。
chinank
2010-12-08
打赏
举报
回复
1
楼主的问题是个伪命题
你40万数据取出来干嘛,你想全部在一个页面显示吗?
多数电脑的IE会被你这40万数据搞死的
你只需要取出你自己想要的数据就可以了,where后面字段,一定要加index
至于count,不要用recordcout,要用
selcect count(1) from xxx 这样用,count(*)会慢一点
取的时候,只取rs(0)就知道是多少了
=====================================================
楼上说的很准确, 另外我补充一点,
select * ……,这样也浪费资源, 只读取你有用的字段即可,
索引+存储过程+ sql语句优化 缺一不可。
小丫头
2010-12-08
打赏
举报
回复
用存储过程呗
youngsheep
2010-12-06
打赏
举报
回复
楼主的问题是个伪命题
你40万数据取出来干嘛,你想全部在一个页面显示吗?
多数电脑的IE会被你这40万数据搞死的
你只需要取出你自己想要的数据就可以了,where后面字段,一定要加index
至于count,不要用recordcout,要用
selcect count(1) from xxx 这样用,count(*)会慢一点
取的时候,只取rs(0)就知道是多少了
gentle_sword
2010-12-04
打赏
举报
回复
用ms sql加存储过程
一把编程的菜刀
2010-12-04
打赏
举报
回复
goodsname 肯定要建立索引 like本身就快不了多少
xd521
2010-12-04
打赏
举报
回复
select * from tb_goods where goodsname like '%1%'
你说你要取所有列的数据集,那你用的*,没有问题
如果你要进行模糊查询,那你用%%,也没有问题
没法优化了
这样的需求,存储过程也无济于事,
我理解你的需求就是:在40万条数据中找“商品编码”列任意部分包含“1”的数据
yc406740872
2010-12-04
打赏
举报
回复
我的是个库存系统,ASP+SQLSERVER。。。商品都存在一个tb_goods表里面,大约30-40万吧。。我做的搜索,就是很简单的搜索 goodsname(商品编码)字段,当然ID是主键索引,我要查goodsname字段,是不是将goodsname字段建立非聚集索引??楼上说不用like,那用什么查询语句呢??
我用传统的like查询,要执行10多秒呀。。请大家帮帮忙。
就以这段SQL语句进行索引的修改(*我是要查所有字段):select * from tb_goods where goodsname like '%%'
namesliu
2010-12-04
打赏
举报
回复
晕。。。。不能,为什么 不加 where
Ygb_Prince
2010-12-04
打赏
举报
回复
我想你是用asp边sqlserver吧?
1,清理好数据表的沉余字段,可以建立字表作为关联,记得为关键字段(需要作为条件的字段都可以设置为字段,不要太多要合理)添加索引;
2,获取数据的数目,可以用select count(id) from table 以id作为索引;
3,合理的化分页
zming
2010-12-04
打赏
举报
回复
where xxx like '%xxx%' 这种用法不使用索引,建立索引也没用的。
只有
where xxx like 'xxx%' 才会使用到索引
xmrxw
2010-12-04
打赏
举报
回复
你可以找一下通用存储过程代码,百万级别的数据!
kkbac
2010-12-04
打赏
举报
回复
like语句本来就慢, 需要的字段上建议索引啊.
phuai007
2010-12-04
打赏
举报
回复
40万数据,最好是加存储过程了。
huangli21
2010-12-04
打赏
举报
回复
存储过程 必须的
hookee
2010-12-03
打赏
举报
回复
为何要 rs.recordcount 取总数? 该不会要把所有数据都读出来?一般都会加WHERE条件的
id如果建立过索引的话,可以用 SELECT COUNT(*) 取总数.
要查询的字段加索引, 尽量避免用LIKE '%xx%'类型的查询
xuStanly
2010-12-03
打赏
举报
回复
什么数据库呀?40万数据都扛不住?
MySQL大
数据
量分页查询方法及其
优化
---方法1: 直接使用
数据
库提供的SQL语句 ---语句样式: MySQL中,可用如下方法:
SELECT
* FROM 表名称 LIMIT M,N ---适
MySQL大
数据
量分页查询方法及其
优化
---方法1: 直接使用
数据
库提供的SQL语句 ---语句样式: MySQL中,可用如下方法:
SELECT
* FROM 表名称 LIMIT M,N ---适应场景: 适用于
数据
量较少的情况(元组百/千级) ---原因/缺点: 全表扫描,速度会很慢 且 有的
数据
库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3)
Sql分页查询
1:mysql的分页查询/** sql:可以是单表的查询语句,也可以是多表的联合查询语句* firstIndex:其实的索引* pageSize:每页显示的记录数*/
select
o.* from (sql) o limit firstIndex,pageSize比如: 查询第1条到第
10
条的
数据
的sql是:
select
* from
table
limit 0,
10
; ->对应我们的需求就是
MySQL 和 Oracle 大
数据
量分页查询方法及其
优化
MySQL大
数据
量分页查询方法及其
优化
---方法1: 直接使用
数据
库提供的SQL语句 ---语句样式: MySQL中,可用如下方法:
SELECT
* FROM 表名称 LIMIT M,N ---适应场景: 适用于
数据
量较少的情况(元组百/千级) ---原因/缺点: 全表扫描,速度会很慢 且 有的
数据
库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3). Limit限制的...
sql语句查询大全
一、基础1、说明:创建
数据
库CREATE DATABASE database-name2、说明:删除
数据
库drop database dbname3、说明:备份sql server--- 创建 备份
数据
的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备份...
分页查询
优化
方案总结
分页查询
优化
方案总结一、 常用分页查询(1)未用索引(2)使用索引二、 分页查询
优化
1 最大id查询法2 between and3 limit id4 延迟关联5 分表查询6 索引7 缓存 函数、扫描记录过多等都会影响查询的速度,如果提高sql语句的查询速度是至关重要的。 一、 常用分页查询 (1)未用索引 对于小
数据
量的表,我们经常采用(
select
* from
table
limit x,y)的形式来完成分页查询。例如:
select
* from areas limit 0,20; (第一页) se
ASP
28,409
社区成员
356,971
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章