Sql server 如何使用SQL查询枚举属于文件组的所有对象?

Sql server 如何使用SQL查询枚举属于文件组的所有对象?,sql-server,tsql,Sql Server,Tsql,如何使用SQL查询枚举属于文件组的所有对象 我可以在每个表和其他对象上查找SSMS>objectexplorer>Properties>Storage,查看它们所属的文件组,但对于数据库中的数百个对象,这可能不是一个可行的解决方案。 您可以更改o.type以控制返回的对象类型。这里的实际问题是什么?@SeanLange我想列出存储在数据库特定文件组中的所有对象(如表、索引等)。如何使用SQL查询来完成此操作?可能重复 SELECT o.[name], o.[type], i.[name], i.

如何使用SQL查询枚举属于文件组的所有对象

我可以在每个表和其他对象上查找
SSMS>objectexplorer>Properties>Storage
,查看它们所属的文件组,但对于数据库中的数百个对象,这可能不是一个可行的解决方案。


您可以更改o.type以控制返回的对象类型。

这里的实际问题是什么?@SeanLange我想列出存储在数据库特定文件组中的所有对象(如表、索引等)。如何使用SQL查询来完成此操作?可能重复
SELECT o.[name], o.[type], i.[name], i.[index_id], f.[name] FROM sys.indexes i
INNER JOIN sys.filegroups f
ON i.data_space_id = f.data_space_id
INNER JOIN sys.all_objects o
ON i.[object_id] = o.[object_id] WHERE i.data_space_id = f.data_space_id
AND o.type = 'U' -- User Created Tables