如何高效的获得一张有上100w条记录表的具体记录数

liumin1939 2009-02-27
如何高效的获得一张有上100w条记录表的具体记录数,我用select count(*) from table 这样的速度太慢要10秒的时间,请问各位怎么才会效率高点?
java-007 2009-03-01
你可以选择select count(1) from table试一下。
如果你的数据表没有主键,那么count(1)比count(*)快
如果有主键的话,那主键(联合主键)作为count的条件也比count(*)要快
如果你的表只有一个字段的话那count(*)就是最快的啦
count(*) count(1) 两者比较。主要还是要count(1)所相对应的数据字段。
如果count(1)是聚索引,id,那肯定是count(1)快。但是差的很小的。
因为count(*),自动会优化指定到那一个字段。所以没必要去count(?),用count(*),sql会帮你完成优化的
Global site tag (gtag.js) - Google Analytics