首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

Sql 查询性能有关问题

2012-12-16 
Sql 查询性能问题对sql查询机制不是太懂,对一张表(数量级百万)进行top 1000查询 用了 2秒 但是 top 10000

Sql 查询性能问题
对sql查询机制不是太懂,对一张表(数量级百万)进行top 1000查询 用了 2秒 但是 top 10000却用了1分多钟,

有一个视图用了这张表连接其他表,top 1000 是9秒,到top 10000过了10分钟没有完成没有继续等。


请问问题出在什么地方?(sql  server 2008)
[最优解释]
看看执行计划。才有比较准确的定论
[其他解释]
建议给车具体的查询语句  你直接这样写大家很难猜
[其他解释]
LZ请参考楼上所说~
[其他解释]
看看执行计划里面有没有表扫描或者聚集索引扫描、或者某个图标上有黄色的感叹号等等?然后看看图形化箭头的宽度是否从右面开始逐步减少。这些有也不一定表示存在问题。只是这些是需要注意的地方。
[其他解释]
对比一下两次执行的执行计划相差在哪里
[其他解释]

引用:
建议给车具体的查询语句  你直接这样写大家很难猜

原表的话 就是select top 1000 / top 10000 * from [UTSTicket].[dbo].[xmlTicket]
视图语句:
SELECT distinct  很多字段名 都来自于 XT
  FROM [UTSTicket].[dbo].[xmlTicket] XT left join LSEPropertyNameList LP
  on XT.PropertyName=LP.PropertyName and LP.ID=1 left join GetTicketQueuelist Q
  on XT.AssignedToTeamName=Q.Name 
  
  
 where LP.PropertyName is not null 
    or Q.Name is not null 


[其他解释]
你这个语句都是会全表扫描的吧  没索引利用  怎么快?
[其他解释]
引用:
看看执行计划。才有比较准确的定论


视图的执行计划好大我也不会看啊,又不知道怎么给你们看到。
[其他解释]
引用:
看看执行计划里面有没有表扫描或者聚集索引扫描、或者某个图标上有黄色的感叹号等等?然后看看图形化箭头的宽度是否从右面开始逐步减少。这些有也不一定表示存在问题。只是这些是需要注意的地方。


我尝试用了下top 5000 30分钟没有出结果,怎么开销涨了这么多?

热点排行