gpt4 book ai didi

sql-server-2005 - 如何获取列上存在的统计信息(如果有)?

转载 作者:行者123 更新时间:2023-12-02 02:38:31 27 4
gpt4 key购买 nike

我想在 Transact SQL 中检查表中的特定列是否有统计信息,如果有则获取所有统计信息。

最佳答案

这个查询应该可以做到。
我在浏览数据库以查找统计信息的存储过程中使用它。
适用于 SQL Server 2005,也可能适用于旧版本。

SELECT S.NAME
FROM SYS.OBJECTS AS O
INNER JOIN SYS.STATS AS S
ON O.OBJECT_ID = S.OBJECT_ID
INNER JOIN SYS.STATS_COLUMNS AS SC
ON SC.OBJECT_ID = S.OBJECT_ID
AND S.STATS_ID = SC.STATS_ID
WHERE (O.OBJECT_ID = OBJECT_ID('MyTable','local'))
AND (O.TYPE IN ('U'))
AND (INDEXPROPERTY(S.OBJECT_ID,S.NAME,'IsStatistics') = 1) /* only stats */
AND (COL_NAME(SC.OBJECT_ID,SC.COLUMN_ID) = 'MyColumn')

关于sql-server-2005 - 如何获取列上存在的统计信息(如果有)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/211166/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com