分析SQL Server直方图表

时间:2016-09-22 11:18:59

标签: sql-server

有没有办法从SQL命令访问SQL Server中的直方图值?使用DBCC SHOW_STATISTICS很容易看到属性的直方图,但是,是否可以在SQL SELECT命令或某些T-SQL过程/函数中访问直方图表?

1 个答案:

答案 0 :(得分:2)

我记得金伯利·特里普的视频中的这个技巧,所以快速搜索产生了

 create table histogram (
        [RANGE_HI_KEY] sql_variant
    ,   [RANGE_ROWS] sql_variant
    ,   [EQ_ROWS] sql_variant
    ,   [DISTINCT_RANGE_ROWS]  sql_variant
    ,   [AVG_RANGE_ROWS] sql_variant
    )

insert into histogram
exec ('dbcc show_statistics(''dbo.orders'',''_WA_Sys_00000001_29572725'') with  HISTOGRAM')

现在您可以访问该表..您可以对Stat_header和density_vector执行相同操作

参考文献:
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/00a3fc6f-bc42-46da-9574-088522976fbb/dbcc-showstatistics-how-to-send-result-to-table?forum=sqltools