查询表所在文件组

已分区的表
SELECT DISTINCT
   t.name                            AS TableName
       ,ps.name                          AS PSName
       ,fg.name                          AS FileGroupName
       ,f.name AS [FileName]
       ,f.physical_name AS [FilePhysicalName]
       --,dds.destination_id AS PartitionNumber --去除注释即可显示文件的分区数
FROM   sys.tables                        AS t
       INNER JOIN sys.indexes            AS i
            ON  (t.object_id = i.object_id)
       INNER JOIN sys.partition_schemes  AS ps
            ON  (i.data_space_id = ps.data_space_id)
       INNER JOIN sys.destination_data_spaces AS dds
            ON  (ps.data_space_id = dds.partition_scheme_id)
       INNER JOIN sys.filegroups         AS fg
            ON  dds.data_space_id = fg.data_space_id
       INNER JOIN sys.database_files f
            ON  f.data_space_id = fg.data_space_id
--WHERE  t.name = 'tableName'

 未分区的表

SELECT t.[name], 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.tables AS t
ON i.[object_id] = t.[object_id]
--WHERE t.name='tablename'

 

 

另一种方法

 

SELECT o.[name] N'对象名', o.[type], i.[name] N'索引名', i.[index_id], f.[name] N'文件组名'
 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 
 --o.type = 'U' -- UDT
 --AND 
 i.data_space_id='4'  --文
 --AND f.name='DisLocalPureDataThree'
 

 

转载于:https://www.cnblogs.com/baozhu/p/9291747.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值