+ -
当前位置:首页 → 问答吧 → sqlserver2008r2中top分页引起查询慢怎么办啊?

sqlserver2008r2中top分页引起查询慢怎么办啊?

时间:2011-12-20

来源:互联网

select top 20 *
from dbo.Project
where (Name = '%*******%'
or ProjectID in (select ProjectID from dbo.App where contains(XMLData,'*******%'))) 
order by TimeCreated desc

这个查询需要3分钟时间

去掉 top20 或者把where语句中的or改成and 查询只需要1秒就能完成
我需要对返回的结果分页请问怎么改sql语句或者修改sqlserver可以实现查询。

服务器环境是win2008+sqlserver2008r2
以前在sqlserver2005中是好的。

分数不多,还请高手帮帮忙啊!

作者: poseidonczq   发布时间: 2011-12-20

那就改成快的那种语句好了.

作者: qianjin036a   发布时间: 2011-12-20

快的方式,不是我想要的!
我要的是and查询,并且可以分页的存储过程。
上面的例子只是我分页存储过程中的一个实例,而且还被我简化过的实例。

作者: poseidonczq   发布时间: 2011-12-20

SQL code
把or改成union试试

作者: gll062   发布时间: 2011-12-20

or是查询条件
改了就错了!

作者: poseidonczq   发布时间: 2011-12-20