如何高效查询表的总记录数(通用方法)
SELECT COUNT(1) ROWS FROM product 野路子1:利用系统自带的存储过程SP_SPACEUSED,详细的使用方式推荐谷哥或度娘,
EXEC SP_SPACEUSED 'PRODUCT'
野路子2:
很多表都会设计一个步长为1的自增长整型(INT)列作为表主键,该做法优劣这里不展开讨论,仅基于这一"习惯",外加一个假设:该字段连续无为断,则可以使用MAX函数了,限制较多哈
1,自增长列
2,该列连续
SELECT MAX(ProductCode) TotalCount FROM Product
野路子3:使用系统表中的信息,优点是速度够快!缺点是数据不精确,所以要结合您自身项目的特点来判定是否适合使用该方法,代码奉上
SELECT ROWS FROM [sysindexes] WHERE id = OBJECT_ID('product') and indid < 2
野路子3修复数据不精确方法,执行以下SQL脚本即可,请不要在生产环境使用!
DBCC UPDATEUSAGE(0, 'product') with COUNT_ROWS