在学SQL SERVER 2000,有几个效率上的问题,首先说一下数据库,我随便建立了一个,填充了20W一样的数据,除了ID不一样,每个字段都是varchar(500)1.关键字EXISTS效率怎么那么高的?select 'test' where exists(select a1 from tba where id=3)这句,瞬间就出来了,而select a1 from tba where id=3就需要14秒,这是怎么回事?EXISTS后面的语句不是一样的吗?2.就是这句select a1 from tba where id=3了,我的电脑是DELL的E521,不算好也不算烂,执行这句语句要8-14秒左右,用存储过程也差不多,感觉有点太慢了,怎么回事?我用access好像也没这么慢啊?有没有比较有效的增加速度的方法呢?
解决方案 »
- sql 循环取数据问题
- Mysql 中 varchar 最多可以装多字符串
- sql server left join 问题
- sql server 2005 可否一条SQL语句,同时插入多张表?
- 请高手绑我写一SQL语句,谢谢
- MSSQL2005数据库自动备份问题(到同一个局域网上的另一台电脑上)
- 存储过程varChar转float错误的问题求教,在线等。
- 在线等.各位请进.
- 关于sybase与sql server中sysobjects表的问题!
- 请问如何检查SQL Server数据库中一个表是否已经存在
- DBCC CHECKDB 检查出现一致性错误 是前端应用程序造成还是硬件原因造成的?
- 一个分页的存储语句错误。
优化器知道EXISTS谓词不需要引用行的特定属性。它只关心行是否存在。
因此,它会完全忽略SELECT列表。