SqlServer快速获得表总记录数(大数据量)
--第1种 执行全表扫描才能获得行数
ALTER PROCEDURE [dbo].[sp_RowCount]
@table NVARCHAR(100)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @tb TABLE(name SYSNAME,[RowCount] NVARCHAR(4000),c NVARCHAR(4000),d NVARCHAR(4000),e NVARCHAR(4000),f NVARCHAR(4000))
INSERT INTO @tb EXEC sp_spaceused @table
SELECT TOP 1 [RowCount] FROM @tb
END
SELECT count(*) FROM BUS_tb_UserGradePrice
select count(userid) from BUS_tb_UserGradePrice where userid is not NULL
SELECT rows FROM sysindexes WHERE id = OBJECT_ID("dbo.BUS_tb_UserGradePrice") AND indid < 2
**其中“dbo.BUS_tb_UserGradePrice”为需要查找的表名
--第4种 存储过程获取总记录数ALTER PROCEDURE [dbo].[sp_RowCount]
@table NVARCHAR(100)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @tb TABLE(name SYSNAME,[RowCount] NVARCHAR(4000),c NVARCHAR(4000),d NVARCHAR(4000),e NVARCHAR(4000),f NVARCHAR(4000))
INSERT INTO @tb EXEC sp_spaceused @table
SELECT TOP 1 [RowCount] FROM @tb
END
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 【SQL Server】统计表记录数
- 下一篇: sqlserver查询数据的所有表名和行数