Does HEAP mean the same thing with a table that has Non-Clustered index?

582 Views Asked by At

In terms of SQL terminology, does HEAP stands for a table that has Non-Clustered index?

Or there is a nuance or it has completely a different meaning?

3

There are 3 best solutions below

0
Duncan Gravill On BEST ANSWER

A heap can have either no index at all or a non-clustered index. But a clustered table can also have non-clustered indexs on top so -

does HEAP stands for a table that has Non-Clustered index?

is not a great definition as a table with a non-clustered index could be either a clustered table or a heap.

0
Diego On

A heap is a table without a clustered index. Simple as that!

0
LazyProgrammer On

A heap is a table without a clustered index. Heaps have one row in sys.partitions, with index_id = 0 for each partition used by the heap. By default, a heap has a single partition. When a heap has multiple partitions, each partition has a heap structure that contains the data for that specific partition.