수색…


파티션 경계 값 검색

SELECT        ps.name AS PartitionScheme
            , fg.name AS [FileGroup]
            , prv.*            
            , LAG(prv.Value) OVER (PARTITION BY ps.name ORDER BY ps.name, boundary_id) AS PreviousBoundaryValue

FROM        sys.partition_schemes ps
INNER JOIN    sys.destination_data_spaces dds
            ON dds.partition_scheme_id = ps.data_space_id
INNER JOIN    sys.filegroups fg
            ON dds.data_space_id = fg.data_space_id
INNER JOIN    sys.partition_functions f
            ON f.function_id = ps.function_id
INNER JOIN    sys.partition_range_values prv
            ON f.function_id = prv.function_id
            AND dds.destination_id = prv.boundary_id

파티션 전환

이 [TechNet Microsoft 페이지] [1]에 따르면,

데이터 파티셔닝 을 통해 전체 데이터 수집의 무결성을 유지하면서 데이터의 하위 집합을 빠르고 효율적으로 관리하고 액세스 할 수 있습니다.

다음 쿼리를 호출하면 데이터가 실제로 이동하지 않습니다. 데이터 위치에 대한 메타 데이터 만 변경됩니다.

ALTER TABLE [SourceTable] SWITCH TO [TargetTable]

테이블은 동일한 데이터 유형과 NULL 설정을 가진 동일한 컬럼을 가져야하며, 동일한 파일 그룹에 있어야하며 새 목표 테이블은 비어 있어야합니다. 파티션 전환에 대한 자세한 정보는 위의 페이지 링크를 참조하십시오.

[1] : https://technet.microsoft.com/en-us/library/ms191160(v=sql.105).aspxIDENTITY 속성이 다를 수 있습니다.

단일 쿼리를 사용하여 파티션 테이블, 열, 스키마, 함수, 전체 및 최소 최대 경계 값 검색

SELECT DISTINCT
    object_name(i.object_id) AS [Object Name],
    c.name AS [Partition Column],
    s.name AS [Partition Scheme],
    pf.name AS [Partition Function],
    prv.tot AS [Partition Count],
    prv.miVal AS [Min Boundry Value],
    prv.maVal AS [Max Boundry Value]
FROM sys.objects o 
INNER JOIN sys.indexes i ON i.object_id = o.object_id
INNER JOIN sys.columns c ON c.object_id = o.object_id
INNER JOIN sys.index_columns ic ON ic.object_id = o.object_id
    AND ic.column_id = c.column_id
    AND ic.partition_ordinal = 1
INNER JOIN sys.partition_schemes s ON i.data_space_id = s.data_space_id
INNER JOIN sys.partition_functions pf ON pf.function_id = s.function_id
OUTER APPLY(SELECT 
                COUNT(*) tot, MIN(value) miVal, MAX(value) maVal 
            FROM sys.partition_range_values prv 
            WHERE prv.function_id = pf.function_id) prv
--WHERE object_name(i.object_id) = 'table_name'
ORDER BY OBJECT_NAME(i.object_id)

단지 where 절을 주석 where 하고 table_nameactual table name 으로 table_name 원하는 오브젝트의 세부 정보를 볼 수 있습니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow