DHo*_*out 19 sql-server sql-server-2005
我正在运行以下查询来列出索引的大小和碎片:
SELECT object_name(object_id, database_id) as objectname), index_id, *
FROM sys.dm_db_index_usage_stats
Run Code Online (Sandbox Code Playgroud)
是否有可用于转换index_id为索引名称的SQL函数?
Esp*_*spo 22
我在这个页面上找到了一个可以帮助你的功能:
CREATE FUNCTION dbo.index_name (@object_id int, @index_id int)
RETURNS sysname
AS
BEGIN
RETURN(SELECT name FROM sys.indexes WHERE object_id = @object_id and index_id = @index_id)
END;
Run Code Online (Sandbox Code Playgroud)
poa*_*ter 10
或者更好的是:
SELECT OBJECT_NAME(d.object_id, d.database_id) AS objectname ,
d.index_id ,
i.name ,
*
FROM sys.dm_db_index_usage_stats AS d
LEFT OUTER JOIN sys.indexes AS i ON i.object_id = d.object_id
AND i.index_id = d.index_id
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40519 次 |
| 最近记录: |