询问者
有没有办法计算出select的结果的数据大小

问题
-
例如
SELECT COUNT(*) FROM TABLE WHERE 字段1=xxx AND 字段2=xxx
我想知道select出来的结果集的大小
查询一个表的大小很简单,但是如果筛选条件查询处理的结果集大小好像有难度
DECLARE @tablespaceinfo TABLE ( nameinfo varchar(50), rowsinfo int, reserved varchar(20), datainfo varchar(20), index_size varchar(20), unused varchar(20) ) DECLARE @tablename varchar(255); DECLARE Info_cursor CURSOR FOR SELECT '['+[name]+']' FROM sys.tables WHERE type='U'; OPEN Info_cursor FETCH NEXT FROM Info_cursor INTO @tablename WHILE @@FETCH_STATUS = 0 BEGIN insert into @tablespaceinfo exec sp_spaceused @tablename FETCH NEXT FROM Info_cursor INTO @tablename END CLOSE Info_cursor DEALLOCATE Info_cursor SELECT * FROM @tablespaceinfo ORDER BY Cast(Replace(reserved,'KB','') as INT) DESC
从客户端统计信息里面看还是不行