统计数据库中符合条件的表中记录的总数DECLARE   @tableName   VARCHAR ( 30 ), @selestr   NVARCHAR ( 100 )
统计数据库中符合条件的表中记录的总数
DECLARE   @i   int , @total   INT
统计数据库中符合条件的表中记录的总数
DECLARE ourcur CURSOR   FOR   SELECT name FROM sysobjects WHERE xtype = ' U '
统计数据库中符合条件的表中记录的总数
OPEN ourcur
统计数据库中符合条件的表中记录的总数
FETCH   NEXT   FROM ourcur INTO   @tableName
统计数据库中符合条件的表中记录的总数
SET   @total = 0
统计数据库中符合条件的表中记录的总数
WHILE   @@FETCH_STATUS = 0
统计数据库中符合条件的表中记录的总数
BEGIN
统计数据库中符合条件的表中记录的总数     
IF   @tableName   LIKE statemen_1            -- 符合第一个条件的表
统计数据库中符合条件的表中记录的总数
     BEGIN
统计数据库中符合条件的表中记录的总数        
SET   @selestr = ' SELECT @m=COUNT(*) FROM ' + @tableName
统计数据库中符合条件的表中记录的总数        
EXEC sp_executesql @selestr ,N ' @m INT OUTPUT ' , @i OUTPUT
统计数据库中符合条件的表中记录的总数        
SET   @total = @total + @i
统计数据库中符合条件的表中记录的总数     
END
统计数据库中符合条件的表中记录的总数
统计数据库中符合条件的表中记录的总数     
ELSE   IF   @tableName   LIKE statement_2       -- 符合第二个条件的表
统计数据库中符合条件的表中记录的总数
     BEGIN
统计数据库中符合条件的表中记录的总数        
SET   @selestr = ' SELECT @m=COUNT(*) FROM ' + @tableName
统计数据库中符合条件的表中记录的总数        
EXEC sp_executesql @selestr ,N ' @m INT OUTPUT ' , @i OUTPUT
统计数据库中符合条件的表中记录的总数        
SET   @total = @total + @i
统计数据库中符合条件的表中记录的总数     
END
统计数据库中符合条件的表中记录的总数
统计数据库中符合条件的表中记录的总数     
ELSE   IF   @tableName   LIKE statement_3       -- 符合第三个条件的表
统计数据库中符合条件的表中记录的总数
     BEGIN
统计数据库中符合条件的表中记录的总数        
SET   @selestr = ' SELECT @m=COUNT(*) FROM ' + @tableName
统计数据库中符合条件的表中记录的总数        
EXEC sp_executesql @selestr ,N ' @m INT OUTPUT ' , @i OUTPUT
统计数据库中符合条件的表中记录的总数        
SET   @total = @total + @i
统计数据库中符合条件的表中记录的总数     
END
统计数据库中符合条件的表中记录的总数     
FETCH   NEXT   FROM ourcur INTO   @tableName
统计数据库中符合条件的表中记录的总数
END
统计数据库中符合条件的表中记录的总数
DEALLOCATE ourcur
统计数据库中符合条件的表中记录的总数
SELECT   @total   AS TotalDataNum                  -- 显示记录总数

 

statement_1/_2/_3…可以插入多个条件来进行匹配操作,期货总的sql语句也可以替换成插入、更新等,批量处理,很方便!

相关文章: