我想知道为什么非分区表在sys.partitions中会有几个孤立的记录。由于它是一个非分区表,sys.partitions和sys.dm_db_partition_stats中应该只有一条记录。
有谁知道这是否是一个问题,如果是,我该如何解决?
谢谢!
编辑: 查询是:
select * from sys.dm_db_partition_stats a right join sys.partitions b on a.partition_id = b.partition_id WHERE b.object_id = OBJECT_ID('tableA')
结果是:
partition_id partition_id index_id partition_number hobt_id rows
72057602390818816 72057602390818816 5 1 72057602390818816 1844605
72057602776891392 NULL 1 1 72057602776891392 1842474
72057602776956928 NULL 1 1 72057602776956928 1842474
72057602777939968 NULL 1 1 72057602777939968 1842498
72057602778071040 NULL 1 1 72057602778071040 1842658
72057602782593024 NULL 6 1 72057602782593024 1842944
72057602783707136 72057602783707136 1 1 72057602783707136 1844605
72057602783772672 72057602783772672 6 1 72057602783772672 1844605
Yikes,有没有办法让它更具可读性?
答案 0 :(得分:2)
来自MSDN文档HERE:
SQL Server中的所有表和索引都包含至少一个分区,无论它们是否已明确分区。
多行可能与您的索引相对应,请检查object_id和index_id并与sys.indexes进行比较。