我想基于我的一个用户生成的表格构建一个SELECT查询&m; mxsec.secmaster'我可以在哪里测量SELECT语句的大小?
查询的一个例子是
SELECT *
FROM MXSEC.SECMASTER
WHERE SECKEY = 4
找出select语句中返回的数据量的最佳方法是什么?我应该使用系统表吗?我应该包含客户统计数据吗?
答案 0 :(得分:1)
尝试:
SELECT *
INTO t1
FROM MXSEC.SECMASTER
WHERE SECKEY = 4
EXEC sp_spaceused 'T1'
DROP TABLE T1
给出如下结果:
name rows reserved data index_size unused
---- ------- --------- ------- ----------- ------
t1 18304 8912 KB 8848 KB 8 KB 56 KB
修改
如果您无法创建永久表,则可以尝试临时表:
SELECT *
INTO #t1
FROM MXSEC.SECMASTER
WHERE SECKEY = 4
dbcc showcontig ('tempdb.dbo.#t1') with tableresults
或者,如果您乐意通过SSMS执行此操作,那么您可以在查询执行选项查询菜单/包含客户端统计信息中包含客户端统计信息,然后查看从服务器接收的字节,这将包括网络开销,但可能足以满足你的需求。