令人难以接受 select count 100w不到的数据量 竟然查询耗时 15秒 ( 积分: 50 )

  • 主题发起人 主题发起人 A delphi
  • 开始时间 开始时间
A

A delphi

Unregistered / Unconfirmed
GUEST, unregistred user!
select&nbsp;count(*)as&nbsp;count&nbsp;from&nbsp;s_Word<br><br>-----------------------------<br>[count]<br>-------<br>947120<br><br>--&nbsp;令人难以接受&nbsp;select&nbsp;100w不到的数据量&nbsp;竟然查询耗时&nbsp;15秒<br>--像这样的SQL语句应该如何优化,<br>如:select&nbsp;Count(field1)&nbsp;as&nbsp;count&nbsp;from&nbsp;&nbsp;s_Word&nbsp;也是一样,<br>我要查询这个表的总数,但是在企业管理器中查看属性很快马上显示为947120,&nbsp;<br>200w以上的数据显也很快,为什么在查询分析嚣中却很慢,在ADOQuery中同样很慢。为什么?
 
那就用存储过程了
 
存储过程就是上面那一句,也是很慢的,试了
 
估计是系统问题!我这里查询分析器查询100W记录0秒,而且还没有任何索引呢
 
select&nbsp;count(1)&nbsp;as&nbsp;count&nbsp;from&nbsp;s_word<br>count&nbsp;是个保留字吧<br>你试试别的<br>select&nbsp;count(1)&nbsp;as&nbsp;mycount&nbsp;from&nbsp;s_word.<br>这样子试试
 
我在我的查询器试了,共花了0:00:01时间,记录数1292487笔<br>select&nbsp;count(*)&nbsp;from&nbsp;tbGhKhFHBook<br>是不是与你的机器有关呀,我用的是服务器。
 
exec&nbsp;sp_MStablespace&nbsp;N'[dbo].[a_test]'<br>Rows&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataSpaceUsed&nbsp;IndexSpaceUsed&nbsp;<br>-----------&nbsp;-------------&nbsp;--------------&nbsp;<br>1000680&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;15259608&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;42224<br><br>(所影响的行数为&nbsp;1&nbsp;行)
 
帮你顶一下,接个分
 
数据量大可是通过&nbsp;exec&nbsp;sp_MStablespace&nbsp;N'[dbo].[a_test]'<br>是很快,就是&nbsp;select&nbsp;Count(*)就很慢为什么?
 
是不是开了什么服务什么的,机器原因吧?
 
sqlserver大数据量计算行数的快速方法.txt<br><br>1500万条数据的表select&nbsp;count(*)&nbsp;from&nbsp;tablename要1分分钟左右,<br>下面的语句就非常快了,0.1秒不到就搞定.<br>select&nbsp;Rows&nbsp;as&nbsp;cnt&nbsp;from&nbsp;sysindexes&nbsp;where&nbsp;name='TableName'
 
楼上方法不错,不知道多长时间会刷新一次阿,是否会有不及时的问题?
 
select&nbsp;Rows&nbsp;as&nbsp;cnt&nbsp;from&nbsp;sysindexes&nbsp;where&nbsp;name='TableName'<br>这个方法得到的值是不准确的。
 
我在查询分析中,用select&nbsp;&nbsp;count(*)&nbsp;from&nbsp;表<br>表中有178w&nbsp;,只有1钞就完成
 
不要count(*),要count(1)
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
681
import
I
S
回复
0
查看
940
SUNSTONE的Delphi笔记
S
后退
顶部