一个奇怪的查询速度问题??在线等待! 都穷的只剩这100分了 大家帮帮忙!
我想问一下 在SELECT 语句查询中 到底是加上了条件WHERE快
还是什么条件也不加的快 我想的是 如果加上了条件
譬如 WHERE ITEM.ITEM='0001'的话 那他在SELECT时不仅得选出来数据
还得一个一个和0001对比是否相等 不知是否是这样?
小弟的一个表ITEM很大 大约有136万行 字段也很多
当我要查询时 速度会很慢
假设两个表是ITEM, 里面有很多字段
select ITEM.a,ITEM.b…………ITEM.ITEM from ITEM where ITEM='0001'
如果这样查的话每一行数据都会查询,数据量太大 速度会很慢
且一次性会选出很多列 我想这也许就是速度慢的原因
所以我想这样 先筛选出满足条件的 可是却实现不了
最近看公司另外一个人编的 他的方法是
创建一个新的临时表 譬如 TEMP_ITEM
然后先查询 SLEECT ITEM FROM ITEM where ITEM='0001'
只查一列速度会快很多
然后用 INSERT TEMP_ITEM (a,b,…………) SELECT ITEM.a,ITEM.b…………
FROM ITEM GROUP a,b,…………
不带任何条件的
最后在查寻时就可以 SELECT ITEM.a,ITEM.b………… FROM TEMP_ITEM
WHERE 此时再加上条件
我个人觉得这样子烦,但是领导说这样做好 我都不知道怎么办好了
大家帮我分析一下 该如何是好呢?我是用ASP 而且不建索引和视图
因为公司领导不批准 除此之外还有别的办法吗?