partition_show , a new version to check partition table status in sqlserver

本文介绍了一个SQL分区视图的创建实例,通过复杂的SQL语句定义了分区视图`partition_show`,该视图提供了数据库表及其分区详情的查询功能。包括表名、分区编号、分区函数名称等信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Dear all:

   I had put  "partition_show"  before . but this time it makes faster.

 

partition_show:

 

SET ANSI_NULLS ON

GO

 

SET QUOTED_IDENTIFIER ON

GO

 

create view [dbo].[partition_show]

as

WITH tobjectid AS

(

select t.object_id from sys.tables as t inner join sys.indexes

as i on t.object_id=i.object_id and i.type in (0,1) inner join sys.partition_schemes ps

on i.data_space_id=ps.data_space_id

)

SELECT distinct OBJECT_NAME(T2.object_id) TABLE_NAME

,T1.partition_number

,T4.name as "function_name"

,T3.name as "schema_name"

,T7.name File_group_name

,T1.rows

,CASE boundary_value_on_right

WHEN 1 THEN 'less than'

ELSE 'less than or equal to ' END as 'comparision'

--,CONVERT(varchar(100), T5.value, 112) value

,T5.value value

FROM sys.partitions T1

INNER JOIN sys.indexes T2

ON T1.object_id = T2.object_id

INNER JOIN sys.partition_schemes T3

ON T2.data_space_id = T3.data_space_id

INNER JOIN sys.partition_functions T4

ON T3.function_id = T4.function_id

LEFT JOIN sys.partition_range_values T5

ON T4.function_id = T5.function_id

AND T1.partition_number = T5.boundary_id

INNER JOIN sys.destination_data_spaces T6

ON T6.partition_scheme_id = T3.data_space_id

AND T6.destination_id = T1.partition_number

INNER JOIN sys.filegroups T7

ON T6.data_space_id = T7.data_space_id

/*where T2.object_id in (select OBJECT_ID(t.name) from sys.tables as t inner join sys.indexes as i on t.object_id=i.object_id and i.type in (0,1) inner join sys.partition_schemes ps on i.data_space_id=ps.data_space_id) */

where T2.object_id in (select object_id from tobjectid)

AND T1.index_id<=1

GO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值